Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2007
    Messaggi
    98

    [C++] Strutture e Union

    Ciao amici, volevo sapere se c'è qualche anima pia che mi spiega un po' come funzionano, perché e quando utilizzare Strutture e Union...Non ho bene capito a che servono e come si usano.. Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    45
    Le strutture sono contenitori di dati anche di diverso tipo.
    E' possibile dichiarare membri della struttura, i quali avranno accesso ai dati definiti all'interno della struttura stessa. In C++ la struct è come definire una "classe".

    Le Unioni non sono altro che aree condivise di memoria da più variabili.
    A differenza del C in C++ sono state espanse con funzionalità di una classe.

    Se ad esempio definiamo una unione con due dati membro, questi dati condividono la stessa area di memoria (supponiamo un int e un char).
    Se dichiariamo un membro dell'unione e accediamo ad un dato membro (impostiamo il valore ad esempio del dato int) è possibile poi effettuare ad esempio la stampa dei dati mebro una volta come int una volta come char (dello stesso dato, in quanto occupano la stessa area di memoria)
    ed otterremo come viene visualizzato un intero come carattere (dato che avevamo settato il dato int).

    Poi ci sono le unioni anonime, in cui si accede direttamente ai dati che condividono la stessa area di memoria, senza dichiarare un membro in quanto il nome dell'unione non viene definito, si informa infatti il compilatore che quei dati condividono la stessa area di memoria.

    Questa diciamo che è una panoramica così per capire i concetti, magari ti conviene poi prendere qualche esempio e provare a vedere cosa viene fuori.....
    ivanet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.