A Typedef szerkezet megértése C++ nyelven
A C++ nyelvben a „typedef” egy olyan kulcsszó, amely új neveket ad a meglévő beépített adattípusoknak, mutatóknak, struktúráknak és a felhasználó által definiált adattípusoknak, amelyek álnévként működnek az egész programban. Egyszerűen fogalmazva, leíró neveket ad a beépített vagy a felhasználó által meghatározott adattípusoknak, amelyek magától értetődőek lehetnek. Ezenkívül segít csökkenteni a kódsorokat és egyszerűsíteni a bonyolult adattípusokat. Azonban, mint korábban említettük, a „typedef” túl sok használata nem ajánlott, mert ez zavart okozhat.
A struktúra egy másik kulcsszó, amelyet a struktúra meghatározására és inicializálására használnak. A C++ szerkezete egy összetett adattípus deklaráció, amely lehetővé teszi a fejlesztők számára, hogy egy helyen csoportosítsák a különböző adattípusokat vagy változókat.
A C++ nyelvben a „struct” és a „typedef struct” ugyanaz. Nincs gyakorlati különbség a „typedef struct” és a „struct” között, mivel ugyanúgy működnek. Valahányszor egy osztályt, enumot, uniót vagy struktúrát deklarálnak vagy definiálnak a C++-ban, szükségtelen azokat implicit módon „typedef”-ként definiálni, mert alapértelmezés szerint „typedef”.
A Typedef Struct szintaxisa C++ nyelven
A „typedef” struktúra szintaxisa megegyezik a „typedef” nélküli struktúráéval. Csak a „typedef” explicit definíciójára van szüksége a „struct” kulcsszóval. Lásd a teljes szintaxist az alábbiakban:
typedef struct {
< adattípus > < változó1 > ;
< adattípus > < változó2 > ;
< adattípus > < változó3 > ;
} < struktúra_neve > ;
A struktúra most egyszerűen a
< struktúra_neve > változó4, változó5, változó6 ;
Most nézzünk meg néhány példát a C++ „typedef” struktúrájának világosabb és jobb megértése érdekében.
1. példa:
A C++ „typedef” struktúrájának első példájában egy egyszerű programmal elmagyarázzuk, hogyan definiálható és használható C++ projektekben. Tekintse meg a következő kódot, majd folytassa a magyarázattal:
#include
segítségével névtér std ;
struct decimális {
int december 1 ;
int dec2 ; } ;
int fő- ( ) {
struct decimális d ;
d. december 1 = 10 ;
d. dec2 = 23 ;
cout << d. december 1 << endl ;
cout << d. dec2 << endl ;
Visszatérés 0 ; }
Ebben a C++ kódban definiálunk egy decimális szerkezetet, és bemutatjuk annak használatát a fő függvényen belül. Vessünk egy pillantást az egyes kódsorokra.
A program azzal kezdődik, hogy tartalmazza a szükséges fejlécfájlt, például az „#include
A fő függvényben létrejön a decimális szerkezet egy példánya. Ez a „d;” deklaráció decimális. A szerkezetnek két tagja van, így mindkettőt a „d” példány használatával érjük el. A „dec1” és „dec2” értékei ezután 10-hez, illetve 23-hoz vannak rendelve, a „d.dec1” és „d.dec2” definíció alapján. Végül a „dec1” és „dec2” értéke a „cout” használatával kerül kinyomtatásra a konzolra. A program a következő kimeneteket adja:
Az adott kimeneti pillanatkép megmutatja, hogy egy egyszerű „typedef” struktúra, a „decimal” hogyan használható két decimális szám tárolására és manipulálására a fő függvényen belül. A „typedef” struktúra lehetővé teszi a kapcsolódó adatok jobb szervezését és kezelését egy C++ programban.
2. példa:
A korábban ismertetett példában csak egyféle adat szerepel a szerkezetben. Most definiáljunk többféle adattípust egy struktúrában, és nézzük meg, hogyan segíthet a „typedef” a kódsorok csökkentésében és a kód bonyolultságának egyszerűsítésében. A kód az alábbiakban található referenciaként:
#includesegítségével névtér std ;
typedef struct szótár {
int id ;
karakterlánc neve ;
hosszú rollnum ;
char osztály név ;
} diktálja ;
int fő- ( )
{
diktálja az adatokat ;
adat. id = húsz ;
adat. név = 'Kalsoom' ;
adat. rollnum = 123456789 ;
adat. osztály név = 'D' ;
cout << 'A jelölt azonosítója = ' << adat. id << endl ;
cout << 'A jelölt neve =' << adat. név << endl ;
cout << 'A jelölt listája = ' << adat. rollnum << endl ;
cout << 'A jelölt osztályneve = ' << adat. osztály név << endl ;
Visszatérés 0 ;
}
Az előző példához hasonlóan ez a program is elindította a szükséges fejlécfájlt, például „#include
Most a fő funkcióban először a szerkezeti szótár egy „dict” nevű példányát definiáljuk olyan adatként, amely a „dict” álneveként működik. Az értékeket a következő utasítások segítségével rendeljük hozzá a struktúra minden tagjához:
adat. id = húsz ;adat. név = 'Kalsoom' ;
adat. rollnum = 123456789 ;
adat. osztály név = 'D' ;
Mint látható, ezek az értékek különböző típusúak – int, string, long és char. A „cout” utasítással kinyomtatjuk az összes meghatározott értéket a konzolon. Lássuk a program kimenetét a következő pillanatképen:
A kimeneti képernyőkép egyértelműen bemutatja a „typedef” használatát a több adattípust tartalmazó struktúrával egy struktúra álnév létrehozásához. Tömörebb, olvashatóbb és egyszerűbb módot biztosít a struktúrákkal való munkavégzéshez a teljes C++ programban.
Következtetés
Összefoglalva a C++ „typedef” struktúráját, a „typedef” egy kulcsszó, amelyet a C++ nyelvben primitív, beépített vagy felhasználó által definiált adattípusok álneveinek létrehozására használnak. A „struct” kulcsszóval párosítva a „typedef” hatékony eszköz a kód tömörségének és érthetőségének javítására. A „typedef” definíció általában segít csökkenteni a kódsorokat és a memóriaterületeket. A „typedef” túlzott használata azonban egyetlen programban sem javasolt, sem rövid, sem hosszú, és bonyolult projekteknél, mert ez kétértelműséget kelthet. Ebben a cikkben a „typedef” struktúrával foglalkoztunk egyszerű példák segítségével, hogy megértsük a „typedef” működését, megvalósítását és használatát a C++ programokban.