Új hozzászólás Aktív témák
-
WonderCSabo
félisten
válasz
Dave-11 #2119 üzenetére
A statikusan lefoglalt változók a veremben kerülnek tárolásra. Ezek a változók csak addig élnek, amíg az a blokk fut, ahol deklarálták őket (pl. fv, vagy ciklus stb.)
void function() {
int loc;
/* műveletek ... */
/* fv vége */
/* itt a 'loc' változó felszabadul */
}Ez azt jelenti, hogy amint vége van a blokknak, a memóriaterület, ahol a változó volt tárolva, felszabadul, tehát bmilyen más dologra felhasználhatóvá válik, nem lehet ezt a változót többet legálisan használni.
Ha dinamikusan foglalod le a memóriát, akkor az a blokk vége után sem szabadul fel, csak akkor, amikor te explicit mondod neki.
void function() {
int* a = new int;
/* itt maga a mutató felszabadul, tehát a változó, ami az újonnan
lefoglalt érték címét tartalmazza, de maga az újonnan létrehozott érték nem szabadul fel */
}Persze ha itt nem tárolod el vhol az újonann létrehozott objektum címét, akkor sosem fogod tudni manuálisan felszabadítani sem, ezt hívják memory leaknek.
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Bomba ár! Fujitsu LifeBook U727 - i3-7GEN I 16GB I 256SSD I 12,5" FHD I Cam I W11 I Garancia!
- Új és újszerű 15-16 Gamer, irodai, üzleti, készülékek nagyon kedvező alkalmi áron Garanciával!
- BESZÁMÍTÁS! MSI B550M WIFI R9 5900X 32GB DDR4 1TB SSD RX 6800XT 16GB Zalman Z1 PLUS Chieftronic 750W
- GYÖNYÖRŰ iPhone 11 Pro 256GB Midnight Green - 1 ÉV GARANCIA, Kártyafüggetlen, 95% Akkumulátor,MS2148
- ÚJ HP Pavilion 16 - 16"IPS WUXGA - Ryzen 5 8540U 16GB - 512GB SSD - Win11 - 3 év garancia - MAGYAR
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest