객체 수명은 생성 위치와 소유권이 결정한다

스택 객체는 스코프가 정리하고, 힙 객체는 소유자가 해제 시점을 책임집니다. 자원은 RAII로 객체 수명에 묶는 것이 안전합니다.

stack

Person p1(...)
생성 스코프 진입
사용 점 연산자
소멸 스코프 종료

heap

Person* p = new Person(...)
생성 new
사용 화살표 연산자
소멸 delete 필요

RAII

unique_ptr<Person>
소유 객체가 자원을 감쌈
이동 소유권을 명시
정리 소멸자에서 자동 해제
유효 범위스코프 밖 객체를 참조하지 않도록 사용 구간을 제한합니다.
해제 책임new가 있다면 delete 또는 스마트 포인터 소유자가 있어야 합니다.
소유자 추적누가 객체를 소유하고 언제 사라지는지 코드에 드러나야 합니다.
수명 주기 판단은 “어디서 만들어졌나”보다 “누가 소유하고 언제 정리하나”를 추적하는 일입니다.