Conteúdo do Curso
C++ Smart Pointers
C++ Smart Pointers
A Necessidade de Ponteiros Inteligentes
O gerenciamento manual de memória requer desalocar explicitamente a memória, ou pode levar a vazamentos de memória, que são notoriamente difíceis de rastrear. Isso torna óbvia a necessidade de uma ferramenta que lide com alocação e desalocação adequada.
Introdução aos Smart Pointers
Smart pointers são objetos que automatizam o gerenciamento de memória, mesmo para memória dinâmica. Existem três tipos de smart pointers.
Smart pointers usam programação orientada a objetos para automatizar o gerenciamento de memória. Eles são essencialmente templates de classe, permitindo que lidem com diferentes tipos de dados enquanto utilizam construtores e destrutores para alocação e desalocação. Quando um smart pointer é criado, seu construtor é chamado e quando sai de escopo, o destrutor lida com a limpeza.
smart_pointer
template <typename T> class SmartPointer { public: SmartPointer(T* pointer) : pointer(pointer) {} ~SmartPointer() { delete ptr; } T* Get() { return pointer; } private: T* pointer; };
Para usar smart pointers, você precisa incluir o arquivo de cabeçalho <memory>
.
including_memory
#include <memory>
Obrigado pelo seu feedback!