Junior — Middle
Kaip std::unique_ptr valdo automatinį paskirtos atminties atlaisvinimą?
sobes.tech AI
Atsakymas iš AI
std::unique_ptr — tai išmanusis rodyklis C++, kuris valdo objektą ir automatiškai atlaisvina atmintį išeidamas iš apimties. Jis įgyvendina vienintelio nuosavybės semantiką: kai unique_ptr sunaikinamas, iškviečiamas valdomo objekto destruktorius ir atlaisvinama atmintis. Tai užkerta kelią atminties nutekėjimams be būtinybės rankiniu būdu kviesti delete.
Naudojimo pavyzdys:
#include <memory>
void pavyzdys() {
std::unique_ptr<int> ptr = std::make_unique<int>(42);
// ptr automatiškai atlaisvins atmintį išeidamas iš funkcijos
}