Sobes.tech
Junior — Middle

Kā std::unique_ptr pārvalda automātisko piešķirtās atmiņas atbrīvošanu?

sobes.tech AI

Atbilde no AI

std::unique_ptr — tas ir gudrs rādītājs C++, kas pieder objektam un automātiski atbrīvo atmiņu, izejot no apgabala. Tas īsteno vienīgās īpašumtiesības semantiku: kad unique_ptr tiek iznīcināts, tiek izsaukts pārvaldītā objekta destruktors un atbrīvota atmiņa. Tas novērš atmiņas noplūdes bez nepieciešamības manuāli izsaukt delete.

Piemērs lietošanai:

#include <memory>

void piemērs() {
    std::unique_ptr<int> ptr = std::make_unique<int>(42);
    // ptr automātiski atbrīvos atmiņu, izejot no funkcijas
}