C++二维数组的动态内存申请后,如何判断成功与否?
int **pi=new int*[a]; int i; for(i=0;i<a;i++)pi[i]=new int[b];难道都用if(pi==NULL)return;吗?
[解决办法]
new是会抛异常的。
[解决办法]
if(pi == 0) return;
for(int i = 0; i < a; i++)
if(pi[i] == 0) return;
[解决办法]
提醒楼主,如果想对new内存成功与否进行判断,要用try catch进行捕获,new不会返回NULL。