所以我偶然发现了这段代码,虽然我现在已经用C/C++编写了大约5年的代码,但我无法理解为什么有人想要这样做.我理解为什么你想在释放内存之后将指针设置为NULL,但我当然不明白为什么有人会想要反过来(看起来像是内存泄漏给我).
其次,我很确定在将指针设置为NULL并将其删除之前,没有必要检查指针是否为NULL,as discussed here.
if( m_pio ) { m_pio = NULL; delete m_pio; }