Kāda ir atšķirība starp deklarāciju un struktūras definīciju?


Atbilde 1:

Struktūras definīcija paredz kompilatoram pateikt, kas ir šī struktūra un ko tā dara. Kad definējat funkciju, parasti kompilatoram sakāt, kādi parametri ir jānodod un jāatdod, un kāds koda bloks jāpalaiž. Tas ļoti līdzinās vārda definīcijai: jūs sakāt datoram, ko konkrēta funkcija nozīmē.

Deklarācija ļauj kompilatoram apzināties noteiktas struktūras esamību, vēl neesot pareizi definētu struktūru.

C un C ++, iespējams, funkcija ir definēta pēc koda bloka, kas to izsauc, vai pat citā failā. Kompilators apkopo kodu secīgā veidā.

Ja mans galvenais () bloks atsaucas uz funkciju ar nosaukumu test (), bet šī funkcija vēl nav definēta vai deklarēta, tad jūs saņemsit kļūdu, tāpat kā jūs darītu, ja mēģinātu atsaukties uz unitializētu mainīgo. Sakot kompilatoram “hei, es to vēlāk definēju kodā, neuztraucies par to”, tas to ņem vērā un vienkārši ielāps kodā, kad tas vēlāk sasniedz funkcijas definīciju.