Miért jó ha a függvény deklarációk és definíciók el vannak különítve hpp és cpp fájlokban? Miért jobb ez, mintha mindent a header-be írnék? Fordításnál ilyenkor mi történik?
Figyelt kérdés
2018. ápr. 15. 17:04
1/4 anonim válasza:
Strukturáltabb lesz a kód, ezálltal átláthatóbb
2/4 anonim válasza:
Dinamikusan fordított függvénykönyvtárak esetében tekintetében csak a header-re van szükség ahhoz, hogy tudja a fordító, hogy hogyan hivatkozzon a másik binárisban található kódokra, nem volna célszerű feleslegesen újrafordítani mindent programonként.
3/4 anonim válasza:
Fordításnál nincs igazán különbség, a hpp és cpp fájlok ugyanolyan forrásfájlok a fordítónak. Viszont az egész függvénykönyvtár, tárgykód, linker, stb. struktúra megkívánja, hogy a külső bináris (tárgykód) hívás fordításánál a hívási szekvenciához, relatív címekhez, stb. szükséges infók legyenek megadva (header), amiben lehetőleg ne legyen fordítandó kód, csak deklaráció.
A kérdés egyébként ott kezdődik, hogy miért kell több fordítási egység, miért kellenek tárgykódok és linker, mi történik, amikor egyik fordítási egységből hívjuk a másikban lévő kódot (ill. a fordító ilyen hívást fordít). Ha ezt megérted, akkor a header dolgot is érteni fogod.
4/4 anonim válasza:
"Dinamikusan fordított függvénykönyvtárak..."
Igazából statikus esetben is ez a helyzet.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!