【发布时间】:2013-01-25 16:48:04
【问题描述】:
我正在尝试建立一种机制来判断类对象的分配位置。 考虑在类中创建一个标志,但无法设置值,因为在“new”运算符的调用期间对象的生命周期没有开始。 在 C++ 中是否可以判断一个对象是在堆栈上还是在堆上(运行时)?
【问题讨论】:
-
你需要它做什么?
-
不能以任何便携方式。
-
嗯,你可以嗅探周围的汇编指令,就像 Apple 在 Objective-C 运行时所做的那样。
-
可以改类界面吗?它仍然必须可以从类继承吗?即使类实例是作为另一个类的一部分创建的,您是否希望它能够工作?
标签: c++ object runtime heap-memory stack-memory