首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

局部指针在函数调用后会把所指的空间释放掉?该怎么处理

2012-04-21 
局部指针在函数调用后会把所指的空间释放掉?DCOraQuery* pDBQuery pOraDeal-get_sel_dinner()pOraDeal

局部指针在函数调用后会把所指的空间释放掉?
DCOraQuery* pDBQuery = pOraDeal->get_sel_dinner();
 pOraDeal->get_data_test(pDBQuery, dinner);
指针pDBQuery 在调用 pOraDeal->get_data_test函数后地址会变为0,我有跟踪这个指针在函数内的地址情况,在return之前地址都没有变,返回后就变为0,函数内没有进行过内存释放的处理。请大虾给解答一下。

[解决办法]
get_data_test()函数内部写数组之类的越界覆盖了相关指针或者破坏了栈...
[解决办法]
应该不会,返回一个临时变量,然后把它赋值给pDBQuery后才销毁临时变量的。

如果你返回的是临时对象的引用的话,不好说!
[解决办法]
关键要看你pOraDeal->get_sel_dinner()返回的指针是否new出来的

热点排行