读书人

困扰初学者界多年的有关问题一个C++

发布时间: 2012-02-13 17:20:26 作者: rapoo

困扰菜鸟界多年的问题,一个C++内存问题,这段代码并不会崩溃,请问这是为什么。
#include <iostream>

using namespace std;

int main()
{
int *p =new int;
delete p;
p=NULL;
delete p;
return 0;
}

[解决办法]
因为delete一个指针没有任何效果,这点是C++语言规定的。
[解决办法]
去看《Effective C++》2e item 8,因为C++标准有特别规定,delete NULL合法无错。

读书人网 >C++

热点推荐