Ha C++-ban példányosítok egy dll-be létrehozott osztályt, az a globális memória területre vagy a halomba jön létre? Magyarázzátok is meg ha kérhetem.
Figyelt kérdés
2018. máj. 24. 21:02
1/3 anonim válasza:
Pont ugyanúgy jön létre, mintha nem külön dll-ben lenne. Ha new-al hozod létre akkor a heapre, egyébként a stackre kerül.
2/3 anonim válasza:
A .dll-ek dinamikus memóriát foglalnak (mivel az sem biztos, hogy egyáltalán bekerülnek a memóriába (ez ugyanis hívásfüggő)), tehát a heap-ben foglalnak memóriát (ha).
A stack-be a predefined változók, tömbök, struktúrák kerülnek (használtságtól függetlenül), meg a visszatérési címek.
3/3 sharkxxx válasza:
Attól függ, hogy hogyan és hol deklarálod az objektumot.
Ha a new operátorral hozod létre az objektumot, akkor a heapbe kerül.
Ha a globális területen deklarálod az objektumot, akkor a globális memóriába kerül.
Ha egy funkción belül deklarálod az objektumot, akkor a stackbe kerül.
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!