【发布时间】:2018-08-23 00:41:40
【问题描述】:
从我记事起,我就一直在调用堆指针,这反过来又让我在写作时思考它们的含义,而我意识到我不知道如何甚至是否有可能分配后,从内存中清除在 main() 中声明的堆栈变量。
显然,我可以只使用结构和析构函数或类似的,但可以说我想删除在 main() 中声明的堆栈上的数组是否可能?
【问题讨论】:
-
calling heap pointers是什么意思? -
您为什么觉得有必要这样做?您是否担心不“删除在 main() 中声明的堆栈上的数组”会导致内存泄漏?如果是这样,你为什么这么认为?
-
你为什么要这样做?如果你想销毁堆栈上的东西,你需要让它超出范围。
-
如果有人为嵌入式系统编写代码,该系统将运行很长时间,并使用堆栈变量忽略析构函数,这不是一件坏事吗?
-
您可以将其包装在一个范围内 (
{})。作用域结束时将被销毁。
标签: c++