mobile theme mode icon
theme mode light icon theme mode dark icon
Random Question Véletlen
speech play
speech pause
speech stop

A megőrzött memória megértése a függvényekben

Egy függvény összefüggésében a "megőrzi" arra a tényre utal, hogy a függvény nem szabadítja fel vagy szabadítja fel az általa használt memóriát. Ehelyett megtartja a memóriát, és felelős annak felszabadításáért, amikor már nincs rá szükség.

Más szóval, a memóriát megőrző függvény nem küldi vissza a memóriát a kupacba vagy a verembe, miután befejezte a használatát. Ez azt jelenti, hogy a függvény felelős a memória élettartamának kezeléséért, ami bizonyos helyzetekben hasznos lehet, de gondos kezelést igényel a memóriaszivárgások elkerülése érdekében.

Például vegyünk egy olyan függvényt, amely memóriát foglal le egy nagy adatszerkezethez, majd visszaad egy mutasson arra az adatstruktúrára a hívó felé. Ha a funkció nem szabadítja fel a memóriát, amikor már nincs rá szükség, a memóriát a függvény megtartja, és a hívó felelős annak későbbi felszabadításáért. Ez memóriaszivárgáshoz vezethet, ha a hívó elfelejti felszabadítani a memóriát.

Ezzel szemben egy olyan függvény, amely egy mutatót ad vissza a veremben vagy a kupacban lefoglalt memóriára, majd felszabadítja a memóriát, amikor már nincs rá szükség (azaz ` malloc" és "free") nem őrzi meg a memóriát. A memória visszakerül a kupacba vagy a verembe, amint a funkció befejezi a használatát, így a hívónak nem kell aggódnia a memória élettartamának kezelésével kapcsolatban.

A Knowway.org cookie-kat használ, hogy jobb szolgáltatást nyújtson Önnek. A Knowway.org használatával Ön elfogadja a cookie-k használatát. Részletes információkért tekintse át a Cookie-kra vonatkozó irányelveinket. close-policy