A definíció automatikusan a legtöbb forgatókönyv deklarációja. Most értsük meg a különbséget a definíció és a nyilatkozat között a részletes összehasonlító táblázatsal.
Összehasonlító táblázat
Az összehasonlítás alapja | Meghatározás | Nyilatkozat |
---|---|---|
Alapvető | Meghatározza a változóban, függvényben vagy osztályban tárolt értéket. | Megadja a változó, a funkció, az osztály stb. Nevét és típusát. |
Memóriaelosztás | Bekövetkezik | Nem történik meg. |
Ismétlés | A nyilatkozatok nem definiálhatók újra, ha már meghatározták. | A redeklaráció könnyen lehetséges. |
terület | Az időtartam meghatározásra kerül | A láthatóság meg van adva |
A meghatározás meghatározása
A meghatározás azonosítja a változó, a funkció, az osztály stb. Nevéhez kapcsolódó kódot vagy adatokat. A fordítónak szükségszerűen meg kell adnia a meghatározást, hogy a tárolt helyet a bejelentett entitáshoz rendelje. Ha egy változót definiálunk, akkor a memória mennyisége több bájtból áll, amely változó számára. A függvénydefiníció kódot hoz létre a függvény számára. Egy programelemet csak egyszer lehet egy programban definiálni, mert a definíció egy egyedi program egyedi eleme. A nyilatkozat és a definíció közötti kapcsolat lehet egy-sok .
Bizonyos helyzetekben a programelemet nem lehet definiálni, de bejelenteni, például ha egy függvényt soha nem használnak, vagy annak címét soha nem használják, még akkor sem, ha azt bejelentették. Egy másik példa az, amelyben az osztály definícióját nem kell használni, amíg azt be kell jelenteni.
A nyilatkozat meghatározása
A nyilatkozatot a program nevének megadására használják, például egy változó, függvény, névtér, osztályok stb. Nevét. A programelemek többször is deklarálhatók, ellentétben a definícióval. Több nyilatkozatot csak akkor lehet elérni, ha a különböző nyilatkozatokat azonos formátumban készítik el. A Nyilatkozat a programelem elemének a fordítók szemszögéből való láthatóságának közege.
A nyilatkozat a definíció célját szolgálja, csak bizonyos esetekben a feltétel nem következik be, amely az alábbiakban szerepel.
- Ha a statikus adatelem egy osztálynyilatkozatban szerepel, ebben az esetben nem egy nyilatkozat. Mivel csak egy példányt generál az osztály minden objektumához, és a statikus adatelemek a megadott osztálytípusú objektumok összetevői.
- Ha egy nyilatkozat tipedef nyilatkozat.
- A változót inicializáló vagy funkciós test nélkül adják ki, de az extern-specifikátort is tartalmazza. Ez azt jelzi, hogy a definíció a másik függvényre vonatkozhat, és megadja a külső összeköttetést.
- Az osztálynév-nyilatkozat anélkül, hogy meghatározást tartalmazna, mint például a T osztály;
Általában a nyilatkozat hatálya alá esik . A hatókör meghatározza a bejelentett név láthatóságát és a meghatározott objektum időtartamát.
A meghatározás és a nyilatkozat közötti fő különbségek
- A programelem meghatározása határozza meg az elemhez társított értéket. Másrészről a programelem deklarációja megadja annak fordítójának nevét és típusát.
- A programelem meghatározása bizonyos mennyiségű memóriát tart fenn, míg a deklaráció nem foglal magában memóriaelosztást.
- A programelem többször is bejelenthető. Ezzel szemben a definíció egyedi leírást tartalmaz a programelem elnevezésével, amely bármilyen kóddal vagy adattal megkülönböztethető.
- A nyilatkozat hatálya a változó, a funkció, az objektum, az osztály, a felsorolás stb. Láthatóságát írja le. Ezzel szemben a definícióban a hatókör az időtartamra vonatkozik.
Meghatározás példa
- Változó meghatározás, valamint a nyilatkozat:
int r = 10;
- Funkció meghatározás:
int add (int x, int y) {int a; a = x + y; vissza a; }
Nyilatkozat példa
- Változó nyilatkozat:
extern int r;
- Funkció-nyilatkozat:
int add (int p1, int p2);
Következtetés
A deklarációs folyamatot arra használják, hogy a programelemet a fordító számára láthatóvá tegye, és nem szükséges a memória felosztása. Fordítottan definiálja a tárolást, egyszerű szavakkal a fordító fenntartja a bejelentett entitás memóriaterületét.