Priporočena, 2021

Izbira Urednika

Razlika med definicijo in izjavo

Opredelitev in deklaracija sta zelo nejasni izrazi, če ste novi v programiranju. Oba koncepta sta v nekaterih pogledih različna, saj definicija vključuje dodajanje pomnilnika spremenljivkam, medtem ko v pomnilniku deklaracije ni dodeljena. Deklaracijo je mogoče opraviti večkrat, nasprotno, entiteto lahko definirate točno enkrat v programu.

Definicija je samodejno deklaracija v večini scenarijev. Zdaj pa razumimo razliko med definicijo in deklaracijo s podrobno primerjalno tabelo.

Primerjalna tabela

Podlaga za primerjavoOpredelitevDeklaracija
OsnovnoDoloča vrednost, shranjeno v spremenljivki, funkciji ali razredu.Določa ime in vrsto spremenljivke, funkcije, razreda itd.
Dodelitev pomnilnikaPojavi seNe zgodi se.
PonovitevIzjave ni mogoče ponovno definirati, če je že definirana.Izjava je lahko enostavno.
Področje uporabeTrajanje se določiVidnost je določena

Opredelitev definicije

Opredelitev opredeljuje kodo ali podatke, povezane z imenom spremenljivke, funkcije, razreda itd. Definicija je nujno potrebna za prevajalnik, da dodeli pomnilniški prostor za deklarirano entiteto. Če je spremenljivka definirana, ima v njej količino pomnilnika, ki je sestavljena iz več bajtov za to spremenljivko. Definicija funkcije izdela kodo za funkcijo. Programski element lahko definiramo samo enkrat v programu, ker je definicija edinstvena specifikacija programskega elementa. Odnos med deklaracijo in definicijo je lahko ena-do-več .

V nekaterih primerih programskega elementa ni mogoče definirati, ampak deklarirati, na primer, ko funkcija ni nikoli poklicana ali njen naslov ni uporabljen, tudi če je deklariran. Drug primer je tista, v kateri definicija razreda ni uporabljena, medtem ko jo je treba deklarirati.

Opredelitev deklaracije

Izjava se uporablja za določitev imen za program, kot so ime spremenljivke, funkcije, imenski prostor, razredi, itd. V programu ni mogoče uporabiti imena brez njegove izjave. Elemente programa lahko za razliko od definicije večkrat razglasimo. Več deklaracij se lahko doseže le, če se različne deklaracije izdelajo v enaki obliki. Deklaracija je sredstvo za zagotavljanje vidnosti elementa programa z vidika prevajalcev.

Deklaracija služi namenu opredelitve, vendar le v nekaterih primerih pogoj ni naveden, kar je navedeno spodaj.

  • Če je član statičnih podatkov deklariran znotraj deklaracije razreda, v tem primeru ni deklaracija. Ker generira samo eno kopijo za vse objekte razreda in statični podatki, so sestavni deli objektov podane vrste razreda.
  • Če je deklaracija typedef stavek.
  • Spremenljivka je deklarirana brez inicializatorja ali telesa funkcije, vendar vključuje zunanje parametre. Označuje, da je lahko definicija za drugo funkcijo in daje ime zunanje povezave.
  • Deklaracija imena razreda brez opredelitve, kot je razred T;

Običajno se deklaracija izvaja v obsegu . Obseg določi vidljivost deklariranega imena in definiranega trajanja objekta.

Ključne razlike med definicijo in deklaracijo

  1. Opredelitev elementa programa določa vrednost, povezano s tem elementom. Po drugi strani deklaracija elementa programa prevajalniku poda ime in tip.
  2. Opredelitev programskega elementa zadrži nekaj pomnilnika, medtem ko deklaracija ne vključuje dodelitve pomnilnika.
  3. Element programa je mogoče prijaviti večkrat. Po drugi strani pa opredelitev vključuje edinstveno specifikacijo z imenom programskega elementa, ki ga je mogoče razlikovati po kateri koli kodi ali podatkih.
  4. Področje uporabe v deklaraciji opisuje vidnost spremenljivke, funkcije, predmeta, razreda, oštevilčenja itd. Nasprotno pa se v opredelitvi področje nanaša na trajanje.

Primer definicije

  • Opredelitev spremenljivke in izjava:
    int r = 10;
  • Opredelitev funkcije:
     int add (int x, int y) {int a; a = x + y; vrnitev a; } 

Primer deklaracije

  • Deklaracija spremenljivke:
    extern int r;
  • Deklaracija funkcije:
    int add (int p1, int p2);

Zaključek

Postopek deklaracije se uporablja za izdelavo vidnega elementa programa za prevajalnik in ne zahteva dodelitve pomnilnika. Obratno definicija je deklaracija, ki rezervira shranjevanje, s preprostimi besedami prevajalnik rezervira pomnilniški prostor za deklarirano entiteto.

Top