3. Implementation/C / C++
delete 널 포인터
SSKK
2009. 7. 10. 03:14
습관적으로 소멸자에서 NULL 체크후에 delete 하곤 했다.
delete 널 포인터가 구문상 가능한 것이기에 아래 예처럼 깔끔하게 작성할 수 있다.
위에서 pchTemp 는 항상 NULL로 초기화 되기때문에 delete m_pchTemp 는 reasonable 하다.
참고 : More Effective C++
~SimpleString() { if(pchTemp != NULL)
delete pchTemp; } |
delete 널 포인터가 구문상 가능한 것이기에 아래 예처럼 깔끔하게 작성할 수 있다.
class SimpleString { private: char * m_pchTemp; public: SimpleString()
: m_pchTemp(NULL)
{ } ~SimpleString()
{ // 습관적으로... //
if(pchTemp != NULL) delete pchTemp; delete
m_pchTemp; } }; |
위에서 pchTemp 는 항상 NULL로 초기화 되기때문에 delete m_pchTemp 는 reasonable 하다.
참고 : More Effective C++