스마트포인터: 1개의 글
[C++] 스마트포인터
스마트 포인터는 C++에서 포인터 때문에 생기는 여러 문제점(메모리 누수, dangling pointer, 할당 실패)을 보완하는 객체입니다. 이 스마트 포인터의 정체는 다름 아닌 포인터를 감싸는 단순한 wrapper라고 보시면 되죠. template class auto_ptr { T* ptr; public: explicit auto_ptr(T* p = 0) : ptr(p) {} ~auto_ptr() {delete ptr;} T& operator*() {return *ptr;} T* operator->() {return ptr;} // ... }; 위의 코드를 참고해보면 방금 설명한 스마트 포인터는 포인터를 감싸는 단순한 wrapper라는 것을 알 수 있죠. 여기서의 핵심은 소멸자에 있습니다. 바로 pt..
기타/C++
2021. 3. 30. 12:50