Aanbevolen, 2020

Editor'S Choice

Verschil tussen definitie en verklaring

Definitie en verklaring zijn zeer verwarrende termen als u niet vertrouwd bent met programmeren. De twee concepten zijn in sommige opzichten anders, omdat de definitie betrekking heeft op de toewijzing van geheugen aan de variabelen, terwijl het geheugen niet is toegewezen. De aangifte kan meer dan één keer worden gedaan, terwijl een entiteit precies één keer in een programma kan worden gedefinieerd.

De definitie is automatisch een verklaring in het grootste deel van het scenario. Laten we nu het verschil tussen definitie en verklaring begrijpen met de gedetailleerde vergelijkingsgrafiek.

Vergelijkingstabel

Basis voor vergelijkingDefinitieVerklaring
basis-Bepaalt de waarde die is opgeslagen in variabele, functie of klasse.Specificeert de naam en het type variabele, functie, klasse, etc.
Geheugen toewijzingTreedtVindt niet plaats.
HerhalingVerklaringen kunnen niet opnieuw worden gedefinieerd als deze eenmaal is gedefinieerd.Opnieuw verklaren kan eenvoudig mogelijk zijn.
strekkingDuur wordt bepaaldZichtbaarheid is opgegeven

Definitie van definitie

Definitie identificeert de code of gegevens die horen bij de naam van de variabele, functie, klasse, enzovoort. De definitie is noodzakelijkerwijs vereist door de compiler om de opslagruimte voor de gedeclareerde entiteit toe te wijzen. Wanneer een variabele is gedefinieerd, geldt dat een hoeveelheid geheugen uit meerdere bytes voor die variabele bestaat. Een functiedefinitie produceert code voor de functie. We kunnen een programma-element slechts eenmaal in een programma definiëren omdat de definitie een unieke specificatie van een programma-element is. De relatie tussen declaratie en definitie kan één-op-veel zijn .

In sommige situaties kan een programma-element niet worden gedefinieerd maar gedeclareerd, bijvoorbeeld wanneer een functie nooit wordt aangeroepen of het adres ervan nooit wordt gebruikt, zelfs niet als het wordt gedeclareerd. Een ander voorbeeld is dat waarbij de klassedefinitie niet wordt gebruikt terwijl deze moet worden aangegeven.

Definitie van Declaration

Declaration wordt gebruikt om de namen van het programma op te geven, zoals de naam van een variabele, functie, naamruimte, klassen, enz. Geen enkele naam kan in een programma worden gebruikt zonder zijn declaratie. De programma-elementen kunnen meerdere keren worden gedeclareerd, in tegenstelling tot de definitie. Meerdere declaraties kunnen alleen worden behaald als de verschillende aangiften met hetzelfde formaat worden gedaan. Declaratie is het medium om het programma-element zichtbaar te maken in het perspectief van compilers.

De verklaring dient het doel van de definitie, alleen in bepaalde gevallen wordt de voorwaarde niet geïmpliceerd die hieronder wordt gegeven.

  • Wanneer het statische gegevenslid wordt gedeclareerd in een klasseverklaring, is het in dat geval geen verklaring. Omdat het slechts één kopie genereert voor alle objecten van de klasse en statische gegevensleden de componenten zijn van de objecten van een opgegeven klassetype.
  • Als een declaratie getypt is.
  • Een variabele wordt gedeclareerd zonder initialisator of functie-instantie, maar bevat externe specifiers. Het geeft aan dat de definitie voor de andere functie zou kunnen zijn en biedt de naam externe koppeling.
  • De klassenaamverklaring zonder definitie zoals klasse T;

Gewoonlijk vindt declaratie plaats binnen een bereik . Het bereik bepaalt de zichtbaarheid van de gedeclareerde naam en de gedefinieerde objectduur.

Belangrijkste verschillen tussen definitie en verklaring

  1. De definitie van een programma-element bepaalt de waarde die aan dat element is gekoppeld. Aan de andere kant specificeert de declaratie van een programma-element zijn naam en type aan de compiler.
  2. De definitie van het programma-element reserveert enige hoeveelheid geheugen, terwijl declaratie geen geheugentoewijzing inhoudt.
  3. Een programma-element kan meerdere keren worden gedeclareerd. Omgekeerd bevat definitie een unieke specificatie met de naam van het programma-element die door elke code of gegevens kan worden onderscheiden.
  4. Scope in declaratie beschrijft de zichtbaarheid van de variabele, functie, object, klasse, opsomming, enzovoort. In de definitie daarentegen heeft de scope betrekking op de duur.

Definitie Voorbeeld

  • Variabele definitie evenals de verklaring:
    int r = 10;
  • Functie definitie:
     int add (int x, int y) {int a; a = x + y; terug een; } 

Verklaring Voorbeeld

  • Variabele verklaring:
    extern int r;
  • Functie verklaring:
    int add (int p1, int p2);

Conclusie

Het declaratieproces wordt gebruikt om het programma-element zichtbaar te maken voor de compiler en het is niet nodig om het geheugen toe te wijzen. Omgekeerde definitie is een verklaring dat reserve-opslag, in eenvoudige bewoordingen de compiler de geheugenruimte reserveert voor de gedeclareerde entiteit.

Top