Sobes.tech
Junior — Middle

Como é que o std::unique_ptr gere a libertação automática da memória alocada?

sobes.tech IA

Resposta da IA

std::unique_ptr — é um ponteiro inteligente em C++ que possui o objeto e liberta automaticamente a memória ao sair do âmbito. Implementa a semântica de propriedade exclusiva: quando o unique_ptr é destruído, o destruidor do objeto gerido é chamado e a memória é libertada. Isto previne vazamentos de memória sem necessidade de chamar manualmente delete.

Exemplo de uso:

#include <memory>

void exemplo() {
    std::unique_ptr<int> ptr = std::make_unique<int>(42);
    // ptr libertará automaticamente a memória ao sair da função
}