In questo articolo imparerai a conoscere le strutture nella programmazione C ++; cos'è, come definirlo e usarlo nel tuo programma.
La struttura è una raccolta di variabili di diversi tipi di dati sotto un unico nome. È simile a una classe in quanto, entrambe contengono una raccolta di dati di diversi tipi di dati.
Ad esempio: vuoi memorizzare alcune informazioni su una persona: il suo nome, numero di cittadinanza e stipendio. Puoi facilmente creare diverse variabili nome, citNo, stipendio per memorizzare queste informazioni separatamente.
Tuttavia, in futuro, potresti voler memorizzare informazioni su più persone. Ora, dovresti creare variabili diverse per ogni informazione per persona: name1, citNo1, salary1, name2, citNo2, salary2
Puoi facilmente visualizzare quanto sarebbe grande e disordinato il codice. Inoltre, poiché non esisterebbe alcuna relazione tra le variabili (informazioni), sarà un compito arduo.
Un approccio migliore sarà quello di avere una raccolta di tutte le informazioni correlate sotto un unico nome Person
e di usarla per ogni persona. Ora, il codice sembra anche molto più pulito, leggibile ed efficiente.
Questa raccolta di tutte le informazioni correlate sotto un unico nome Person
è una struttura.
Come dichiarare una struttura nella programmazione C ++?
La struct
parola chiave definisce un tipo di struttura seguito da un identificatore (nome della struttura).
Quindi all'interno delle parentesi graffe, è possibile dichiarare uno o più membri (dichiarare le variabili all'interno delle parentesi graffe) di quella struttura. Per esempio:
struct Person (char name (50); int age; float salary;);
Qui viene definita una struttura persona che ha tre membri: nome, età e stipendio.
Quando viene creata una struttura, non viene allocata alcuna memoria.
La definizione della struttura è solo il modello per la creazione di variabili. Puoi immaginarlo come un tipo di dati. Quando si definisce un numero intero come di seguito:
int foo;
La int
specifica che, la variabile foo può contenere solo elementi interi. Allo stesso modo, la definizione della struttura specifica solo la proprietà di una variabile di struttura quando viene definita.
Nota: ricorda di terminare la dichiarazione con un punto e virgola (;)
Come definire una variabile di struttura?
Una volta dichiarata una struttura persona come sopra. È possibile definire una variabile di struttura come:
Fattura persona;
Qui, una legge variabile struttura è definita che è di tipo P struttura erson
.
Quando viene definita la variabile di struttura, solo allora la memoria richiesta viene allocata dal compilatore.
Considerando che hai un sistema a 32 o 64 bit, la memoria di float
è 4 byte, la memoria di int
è 4 byte e la memoria di char
è 1 byte.
Quindi, 58 byte di memoria sono allocati per la fattura della variabile di struttura.
Come accedere ai membri di una struttura?
Ai membri della variabile di struttura si accede utilizzando un operatore punto (.) .
Supponiamo di voler accedere a age of structure variable bill e assegnargli 50. È possibile eseguire questa attività utilizzando il codice seguente di seguito:
bill.age = 50;
Esempio: struttura C ++
Programma C ++ per assegnare dati ai membri di una variabile di struttura e visualizzarli.
#include using namespace std; struct Person ( char name(50); int age; float salary; ); int main() ( Person p1; cout << "Enter Full name: "; cin.get(p1.name, 50); cout <> p1.age; cout <> p1.salary; cout << "Displaying Information." << endl; cout << "Name: " << p1.name << endl; cout <<"Age: " << p1.age << endl; cout << "Salary: " << p1.salary; return 0; )
Produzione
Immettere il nome completo: Magdalena Dankova Immettere l'età: 27 Immettere lo stipendio: 1024.4 Visualizzazione delle informazioni. Nome: Magdalena Dankova Età: 27 Stipendio: 1024.4
Qui viene dichiarata una struttura Persona che ha tre membri nome, età e stipendio.
All'interno della main()
funzione è definita una variabile di struttura p1. Quindi, all'utente viene chiesto di inserire le informazioni e vengono visualizzati i dati inseriti dall'utente.
Dovresti anche controllare questi tutorial relativi alla struttura:
- Come passare le strutture alle funzioni?
- Come usare i puntatori con le strutture?