항목 40 : 일체적 클래스의 해악, 4부 : std::string 대미 ( 난이도 : 6 )
1 ) std::string::erase가 비멤버 함수가 될 수 있을까? 2 ) std::string의 나머지 멤버 함수들을 분석하고, 비멤버 함수들로 만들 수 잇는지(또는 그렇게 하는 것이 좋은지) 설명하라 a. replace b. copy와 substr c. compare d. find 군(find, find_*, rfind ) 이렇게 질문이 있는데, 하나의 진리에서 나온 것들이다. "클래스 구현시, non-member, non-friend function 으로 만들 수 없는 함수만, member 함수로 만들어라." 이번 항목의 요약을 책에서 그대로 옮긴다. 분활과 캡슐화는 좋은것이다. 특히 C++의 경우에는, 알고리즘과 컨테이너를 분리시키는 것이 좋다. STL도 대부분 그런 원칙에 따라 만들어 졌다..
책 정리/Exceptional C++ Style
2009. 2. 10. 05:25
최근댓글