http://www.codeproject.com/KB/cpp/XONOR.aspx

shared_ptr<T> 를 실전에 적용해보려다 막상 여러가지 불편함에 맞닥뜨려본 입장으로선 새로운 관심..


간단히 요약하자면 owner_ptr<T> 와 ref_ptr<T> 라는 두가지 종류의 포인터를 사용해서 오브젝트를

사용하되, owner_ptr<T> 가 소유권을 전담하고 ref_ptr<T> 는 단순 참조로만 사용. 만약 owner_ptr<T>

가 사라지게 되면 T 도 사라지고 ref_ptr<T> 의 값은 자동으로 NULL 로 바뀌게 된다.


따라서 owner_ptr<T> 나 ref_ptr<T> 모두 이미 삭제된 오브젝트를 참조할 리스크(a.k.a. dangling pointer)는

원천적으로 차단된다. (주의사항 참조)

imcgames 의 김학규입니다