ownership choice

스마트 포인터 선택은 소유권 질문 하나로 시작한다

포인터 문법보다 수명 책임이 먼저입니다. 객체가 언제 파괴되어야 하는지 정하면 타입 선택이 쉬워집니다.

나만 소유한다

복사 없이 이동만 허용하고 스코프 종료 시 바로 정리합니다.

unique_ptr

여럿이 소유한다

참조 횟수로 마지막 소유자가 사라질 때 객체를 정리합니다.

shared_ptr

살아 있는지만 본다

소유권 카운트를 올리지 않고 lock으로 접근 가능 여부를 확인합니다.

weak_ptr
마지막 점검: get()으로 빌린 포인터는 delete하지 말고, release()를 썼다면 수동 해제 책임자를 반드시 정합니다.