本文共 299 字,大约阅读时间需要 1 分钟。
tes *ptes;tes *&gfunc(){return ptes;}
以上是全局指针
tes *ptemp = gfunc();delete ptemp;ptemp = new tes;这里犯了个错误,以后再次调用 gfunc访问ptes 时,东西已经清理掉了,程序崩溃;new出来的东西给到了临时指针ptemp上,内存泄露
以下为ok的写法:
1
tes *&ptemp = gfunc();delete ptemp;ptemp = new tes;
2
tes *ptemp = gfunc();delete ptemp;ptemp = new tes;gfunc() = ptemp;
转载地址:http://cutni.baihongyu.com/