我想知道在C++中是否有预定义的宏或其他东西,可以追踪析构函数何时被触发?
可能是这样的:
class myClass{
myClass();
~myClass();
};
myClass::~myClass(){
printf("Object destroyed in %s.\n", __TRACEBACKMACRO__);
}
int main(){
myClass tempClass;
return 0;
}
应该输出像这样的东西:
Object destroyed in main().
最好也输出作用域和命名空间信息。
附加信息: FUNCTION 或 func 宏似乎只在函数中有效,而不在结构体和类中有效。有任何适用于结构体和类的宏吗?参考文献。