항목 29 : auto_ptr 사용 하기 (난이도 : 5)
std::auto_ptr 에 대한 이야기이다. 이것은 표준에 있는 스마트 포인터 이기 때문에, 스마트 포인터의 대표격이다. 물론 C++ 0x 에선 shared_ptr 이 .. 대표로 갈아치우지 않을까 한다. : ) 질문 1. auto_ptr을 잘못 사용 하고 있는 코드이다. 한번 찾아 보아라. template void f( size_t n ) { auto_ptr p1( new T ); auto_ptr p2( new T[n] ); // .. 할일 있으면 더 한다. } 질문 1은 바로 답을 말하면, 배열을 담았다는 데에 있다. auto_ptr 은 배열을 담는다 해도 delete[] 를 호출해 주지 않기 때문에 문제이다. 질문 2. 이 문제를 어떻게 해결할 것이며, 어댑터 패턴이나 생성 작업의 문제점과 aut..
책 정리/More Exceptional C++
2008. 12. 14. 18:44
최근댓글