항목 25: 예외를 던지지 않는 swap에 대한 지원도 생각해 보자
swap 함수는 무엇일까? .. 뭐 다들 알겠고, 중요한건 이 함수를 이용하여, "교체" 를 할수 있다는것이다. 왜 이 함수가 중요한것인가? STL에 이 함수가 포함된 이래, 예외 안전성 프로그래밍에선 없어선 안 될 감초 역활로써, 자기 대입 현상의 가능성에 대처하기 위한 대표적인 매커니즘으로서 널리 사랑받아 왔다다고 저자는 설명한다; 이쁘면 얼굴값 한다고, 이 swap 함수에도 말들이 많다. 그것은 바로 효율 때문이다. 기본적으로 복사하는데에 대한 비용은 지불해야 겠지만, 지불하지 않아도 되는 경우가 있기 때문인데, 그것이 바로 다른 타입의 실제 데이터를 가리키는 포인터가 주성분인 타입의 객체(pimpl(pointer to implementation))의 swap 이다! 어떻게 하면, 이런 객체 전용의..
책 정리/Effective C++ 3판
2008. 6. 24. 23:09
최근댓글