Suositeltava, 2024

Toimituksen Valinta

Määritelmän ja julistuksen välinen ero

Määritelmä ja julistus ovat hyvin hämmentäviä termejä, jos olet uusi ohjelmointi. Nämä kaksi käsitettä ovat eri tavoin erilaisia, koska määritelmä sisältää muistin osoituksen muuttujille, kun deklarointimuistia ei ole allokoitu. Ilmoitus voidaan tehdä useammin kuin kerran, ja kokonaisuus voidaan määritellä täsmälleen kerran ohjelmassa.

Määritelmä on automaattisesti ilmoitus useimmissa skenaarioissa. Nyt ymmärrämme eron määritelmän ja ilmoituksen välillä yksityiskohtaisen vertailukaavion kanssa.

Vertailukaavio

Vertailun perusteetMääritelmäilmoitus
perustiedotMäärittää muuttujaan, funktioon tai luokkaan tallennetun arvon.Määrittää muuttujan, toiminnon, luokan jne. Nimen ja tyypin.
Muistin jakaminentapahtuuEi tapahdu.
ToistoIlmoituksia ei voi määrittää uudelleen, jos se on jo määritelty.Uudelleenilmoitus voi olla helposti mahdollista.
laajuusKesto määritetäänNäkyvyys on määritetty

Määritelmän määritelmä

Määritelmä tunnistaa muuttujan, funktion, luokan jne. Nimeen liittyvän koodin tai datan. Kääntäjän on välttämätöntä, että määritelmä määrittää ilmoitetun kokonaisuuden tallennustilan. Kun muuttuja on määritelty, siinä on muistin määrä, joka koostuu useista tavuista kyseiselle muuttujalle. Toiminnon määritelmä tuottaa koodin toiminnolle. Voimme määritellä ohjelman elementin vain kerran ohjelmassa, koska määritelmä on ohjelman elementin ainutlaatuinen määrittely. Ilmoituksen ja määritelmän välinen suhde voi olla monta .

Joissakin tilanteissa ohjelman elementtiä ei voida määritellä, mutta se voidaan ilmoittaa, esimerkiksi kun toimintoa ei koskaan käytetä tai sen osoitetta ei koskaan käytetä, vaikka sitä ilmoitettaisiin. Toinen esimerkki on se, jossa luokan määritelmää ei käytetä, kun se on ilmoitettava.

Julistuksen määritelmä

Julistusta käytetään määrittämään ohjelman nimet, kuten muuttujan, funktion, nimiavaruuden, luokkien nimi jne. Ohjelmassa ei voi käyttää nimeä ilman sen ilmoitusta. Ohjelman elementit voidaan julistaa monta kertaa, toisin kuin määritelmä. Useita ilmoituksia voidaan tehdä vain silloin, kun eri ilmoitukset tehdään samassa muodossa. Julistus on väline, jonka avulla ohjelmaelementti saadaan näkyväksi kääntäjien näkökulmasta.

Ilmoitus palvelee määritelmän tarkoitusta, vain tietyissä tapauksissa edellytystä ei ole esitetty, mikä on jäljempänä.

  • Kun staattisen datan jäsen ilmoitetaan luokanilmoituksessa, siinä tapauksessa se ei ole ilmoitus. Koska se luo vain yhden kopion kaikille luokan objekteille, ja staattiset datan jäsenet ovat tarjotun luokan tyyppisten objektien komponentteja.
  • Jos ilmoitus on typedef-ilmoitus.
  • Muuttuja ilmoitetaan ilman alustusta tai funktiokappaletta, mutta se sisältää ulkoiset määritteet. Se osoittaa, että määritelmä voisi olla toiselle toiminnolle ja antaa ulkoisen yhteyden.
  • Luokan nimen ilmoitus ilman määritelmää kuten luokkaa T;

Yleensä ilmoitus tapahtuu laajuudeltaan . Soveltamisala päättää ilmoitetun nimen näkyvyyden ja määritetyn objektin keston.

Määritelmän ja julistuksen keskeiset erot

  1. Ohjelman elementin määritelmä määrittää siihen liittyvän arvon. Toisaalta ohjelmaelementin ilmoitus määrittää sen nimen ja tyypin kääntäjälle.
  2. Ohjelman elementin määrittely pitää jonkin verran muistia, kun taas ilmoitus ei sisällä muistin allokointia.
  3. Ohjelman elementti voidaan ilmoittaa useita kertoja. Toisaalta määritelmä sisältää ainutlaatuisen spesifikaation, jossa on ohjelman elementin nimi, joka voidaan erottaa millä tahansa koodilla tai datalla.
  4. Ilmoituksessa käsitellään muuttujan, funktion, kohteen, luokan, luettelon jne. Näkyvyyttä. Sen sijaan määritelmässä soveltamisala liittyy kestoon.

Määritelmä Esimerkki

  • Muuttuja määritelmä sekä ilmoitus:
    int r = 10;
  • Toimintojen määrittely:
     int add (int x, int y) {int a; a = x + y; palaa a; } 

Julistuksen esimerkki

  • Muuttuva ilmoitus:
    extern int r;
  • Toiminnallisuusilmoitus:
    int add (int p1, int p2);

johtopäätös

Ilmoitusprosessia käytetään tekemään ohjelman elementin näkyväksi kääntäjälle, eikä se vaadi muistin jakamista. Käänteisesti määritelmä on varastoinnin varaaminen, yksinkertaisesti sanoen kääntäjä varaa muistitilan ilmoitetulle yksikölle.

Top