V tomto článku sa dozviete o štruktúrach v programovaní v C ++; čo to je, ako to definovať a použiť vo vašom programe.
Štruktúra je kolekcia premenných rôznych dátových typov pod jedným menom. Je to podobné ako v triede, pričom obe obsahujú kolekciu údajov rôznych dátových typov.
Napríklad: Chcete uložiť nejaké informácie o osobe: jej meno, občianske číslo a plat. Môžete ľahko vytvoriť rôzne premenné, meno, číslo, plat, aby ste tieto informácie uložili osobitne.
V budúcnosti by ste však chceli ukladať informácie o viacerých osobách. Teraz by ste pre každú informáciu o osobe potrebovali vytvoriť rôzne premenné: meno1, číslo1, plat1, meno2, číslo2, plat2
Môžete si ľahko predstaviť, aký veľký a chaotický by kód vyzeral. Pretože by neexistoval žiadny vzťah medzi premennými (informáciami), bude to náročná úloha.
Lepším prístupom bude zhromaždenie všetkých súvisiacich informácií pod jedným menom Person
a ich použitie pre každú osobu. Teraz kód vyzerá oveľa čistejšie, čitateľnejšie a efektívnejšie.
Táto zbierka všetkých súvisiacich informácií pod jedným menom Person
je štruktúra.
Ako deklarovať štruktúru v programovaní v C ++?
struct
Kľúčové slovo definuje typ štruktúry nasledovaný identifikátorom (názov štruktúry).
Potom vo vnútri zložených zátvoriek môžete vyhlásiť jedného alebo viacerých členov (deklarovať premenné vo vnútri zložených zátvoriek) tejto štruktúry. Napríklad:
Štruktúra Osoba (meno (50); int vek; pohyblivý plat;);
Tu je definovaná štruktúra osoby, ktorá má troch členov: meno, vek a plat.
Po vytvorení štruktúry sa nepridelí žiadna pamäť.
Definícia štruktúry je iba modelom pre vytváranie premenných. Môžete si to predstaviť ako údajový typ. Keď definujete celé číslo, ako je uvedené nižšie:
int foo;
K int
určuje, že premenná foo pojme len celočíselnými prvok. Podobne definícia štruktúry iba špecifikuje, ktorú vlastnosť má premenná štruktúry, keď je definovaná.
Poznámka: Nezabudnite ukončiť deklaráciu bodkočiarkou (;)
Ako definovať štruktúrnu premennú?
Akonáhle deklarujete štruktúru osoby, ako je uvedené vyššie. Štruktúrnu premennú môžete definovať ako:
Osobný účet;
Tu je konštrukcia variabilný zákona je definovaná, ktorá je typu konštrukcie P erson
.
Keď je definovaná premenná štruktúry, kompilátor až potom pridelí požadovanú pamäť.
Ak vezmeme do úvahy, že máte 32-bitový alebo 64-bitový systém, pamäť float
má 4 bajty, pamäť int
4 bajty a pamäť char
1 bajt.
Preto je pre účet premennej štruktúry pridelených 58 bajtov pamäte.
Ako získať prístup k členom štruktúry?
K členom premennej štruktúry sa pristupuje pomocou operátora bodka (.) .
Predpokladajme, že chcete získať prístup k veku štruktúrnej premennej a priraďte jej 50. Túto úlohu môžete vykonať pomocou nasledujúceho kódu uvedeného nižšie:
bill.age = 50;
Príklad: Štruktúra C ++
Program C ++ na priradenie údajov členom štruktúrnej premennej a ich zobrazenie.
#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; )
Výkon
Zadajte celé meno: Magdaléna Danková Zadajte vek: 27 Zadajte plat: 1024,4 Zobrazenie informácií. Meno: Magdaléna Danková Vek: 27 Plat: 1024,4
Tu je deklarovaná štruktúra Osoba, ktorá má troch členov, meno, vek a plat.
Vo vnútri main()
funkcie je definovaná štruktúrna premenná p1. Potom je používateľ vyzvaný na zadanie informácií a zobrazia sa údaje zadané používateľom.
Mali by ste sa tiež pozrieť na tieto návody týkajúce sa štruktúry:
- Ako prenášať štruktúry do funkcií?
- Ako používať ukazovatele so štruktúrami?