Smart Pointer 썸네일형 리스트형 C++ 스마트포인터 참조금지, 대입금지 C++ 스마트포인터에서 참조계수 방법은 편리하기는 하지만 어째든 참조계수가 더 부담된다. 한번만 사용하고 복사나 대입을 금지하는 포인터를 만들면 참조계수 부담이 적고 destroy될때 메모리에서 정리된다.참조계수 기반과 다르게 refbase를 상속받지 않는 int같은형도 가능하다. 즉 sp p1 이런게 가능하다. template class sp{T* obj;sp(const sp&) //복사 금지void operator=(const sp& ) //대입금지public:~sp() { delete obj; } sp(T* p = 0) : obj(p) {} T* operator->() { return obj; } T& operator*() { return *obj; } }; 더보기 C++ Smart Pointer 참조계수 기반 C++ Smart Pointer는 Pointer일반기능(복사,생성,대입,)과 자동 Memory해제 기능을 지원하는 객체를 말한다. smart pointer는 객체에서 Reference count를 해서 더이상 참조하는 경우가 없으면 자동으로 obj를 Free시켜준다. 1 아래와 같이 Smart pointer기본 개념은 아래와 같다.class dog{public :void bark() { printf("bark bark"); }}; class sp { //dog객체를 위한 전용 smart pointerdog* obj;public :~sp() { delete obj; } // scope를 벗어날때 자동으로 Destroy되도록 지원한다.sp(dog* p = 0) : obj(p) {} // 생성자 obj값을 초.. 더보기 이전 1 다음