resource
소멸자를 직접 쓰는 순간 복사와 이동 정책도 같이 선언해야 한다
직접 자원을 소유하면 정리, 복사, 이동을 한 묶음으로 설계한다.
소멸자delete[] data가 필요함
복사 생성자새 버퍼에 깊은 복사
복사 대입기존 자원 정리 후 교체
한 묶음셋 중 하나만 쓰면 위험
| 직접 소유 코드 | 자동 기본 동작 | 직접 정해야 할 것 |
|---|---|---|
| int* data | 포인터 값만 복사 | 깊은 복사 |
| ~Buffer() | 메모리 해제는 됨 | 복사 생성자와 대입 |
| b2 = b1 | 같은 주소 공유 | 새 자원 확보 후 교체 |
핵심 Rule of Three는 소멸자를 쓴 순간 복사 의미까지 직접 책임져야 한다는 경고다.