【发布时间】:2011-07-19 10:06:50
【问题描述】:
继续我的previous question,我想问以下问题:
给定一个 C++ 函数,其中包含一个新语句,但没有显式返回任何内容(即使用 return 语句),它是否也应该总是有一个删除?
如果不是,请给我一个例子。
【问题讨论】:
-
每一个
new必须有一个匹配的delete,否则就会出现内存泄漏。 -
@FredOverflow:但不一定在同一个函数中。
-
@FredOverflow:他问的不是这个。
-
new 返回的指针可以分配给全局变量,也可以包裹在
scoped_ptr或其他任何东西中。所以,一般的答案是否定的。 -
我问这个是因为我确定我的程序正在泄漏
标签: c++ return delete-operator