不能返回函数内部new分配的内存的引用

以前在开发电子秤接口动态库时,曾尝试在用于获取重量的函数外面定义一个字符串指针,然后作为参数传入函数内部,然后在函数内部new,用来输出函数执行过程中发生的错误。但是总是出错,没有找到原因,后来无意中看到了下面的一段说明,忘记摘录出处了,感谢作者。

如下:

不能返回函数内部 new分配的内存的引用(这个要注意啦,很多人没意识到,哈哈。。。  

这条可以参照Effective C++[1] Item 31。虽然不存在局部变量的被动销毁问题,可对于这种情况(返回函数内部 new分配内存的引用),又面临其它尴尬局面。例如,被函数返回的引用只是作为一个临时变量出现,而没有被赋予一个实际的变量,那么这个引用所指向的空间(由 new分配)就无法释放,造成memory leak
菊子曰 本文用菊子曰发布

原文链接: https://www.cnblogs.com/sdsunjing/p/5019903.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    不能返回函数内部new分配的内存的引用

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/225371

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午12:47
下一篇 2023年2月13日 下午12:47

相关推荐