항목 96 : POD가 아닌 데이터를 memcpy 또는 memcmp하지 말라. ( Don’t memcpy or memcmp non-PODs. )
{ 뭐 다들 알겠지만 C++ 에선 클래스의 내부 값이 스마트 포인터, 각종 핸들, 카운팅 객체, 상속성 객체 등이 즐비하므로, memcpy 했다가 정체를 알수 없는 행동을 한다거나 memcpy 했다가 같은 것임에도 다르다고 비교 될 수 있는 경우가 반드시 생긴다. KGCA15기 임훈 형이 만든, 메모리 풀(물론 공부 목적으로 만든 것이다)에서 문제점이 없는지 찾아 봐달라고 요청이 왔을 때, 문제점의 냄새는 맡았으나, 어떤 냄새인지 정의를 내리지 못하였다. 그런데 이 책을 보다가 아! 이거구나! 했었다. 그런데 사실 memcpy 나 memcmp 를 사용한 적이 별로 없더라 ... }
책 정리/C++ Coding Standards : C++ 코딩의 정석
2009. 4. 17. 00:00
최근댓글