부재 : 전위 연산자와 후위연산자의 특징을 이해하고, 전위 후위연산자 오버로딩 시 원칙을 지켜라. 이유 1. 알맞은 클래스 설계를 위해서 (사실 이 말 밖에 없다..) 해결방법 1. 전위 연산자와 후위연산자의 특징을 이해 해라.(밑의 코드를 이해 하면 .. 뭐 다 아는거다.) 2. 전위/후위 연산자를 오버로딩 할땐, 전위 연산자로 후위 연산자를 표현하는 원칙을 지킨다. (왜냐하면, 일반적인 규칙이기 때문이다) 3. 아리송할땐 객체가 int와 동일한 연산을 할수 있도록 정의해 준다. 코드 // 전위 연산자 작동 원리 : 0개의 임시객체를 만드는것을 알수 있다. template _T& operator++() { *this += 1; // 임시객체 생성 안함, 바로 연산처리함 return *this; // 레..
항목6 검색 결과
해당 글 2건
항목 6 : 증가 및 감소 연산자의 전위/후위 형태를 반드시 구분하자
책 정리/More Effective C++ 1판
2008. 5. 15. 19:47
항목 6. 소멸자에서 포인터 맴버에 대해 delete를 이용 한다.
이유 1. 메모리 릭이 발생되기 때문이다. 2. 동적메모리 할당 중 에러 발생시, 예상치 못한 결과가 나올수 있다. (참고) 널포인터 삭제는 언제나 안전하기 때문이다. 해결방법 1. 할당에 실패할시 0값을 넣어라. (C++0x 가 적용되면 nuulptr 이 쓰일것으로 생각된다) 2. 소멸자에서 delete를 이용해라. 3. 다음의 사항을 기억해라. - 생성자 각각에서 포인터의 초기화, 만일 특정 생성자에서 메모리 할당되지 않았을 경우 0으로 초기화해라 - 할당 연산자에서 기존 메모리를 삭제하고 새로운 메모리의 할당해라(0값 해체는 아무일도 없음) - 소멸자에서 포인터를 삭제 해라 주의점 1. 클래스 생성시 new를 사용하지 않았다면, delete를 수행하지 말아라. (부득이하게 malloc으로 생성했다면..
책 정리/Effective C++ 2판
2008. 5. 7. 05:52
최근댓글