【发布时间】:2009-02-12 11:29:53
【问题描述】:
#define SAFE_DELETE(a) if( (a) != NULL ) delete (a); (a) = NULL;
或
template<typename T> void safe_delete(T*& a) {
delete a;
a = NULL;
}
或任何其他更好的方法
【问题讨论】:
-
它仍然很傻,但宏安全删除应该是:#define SAFE_DELETE(a) do { delete (a); (a) = 空; } 而 (0)
标签: c++ pointers c-preprocessor