【发布时间】:2021-03-17 14:22:14
【问题描述】:
我目前正在开发一个生成 C++ 代码的程序。这个生成的 C++ 代码有时需要破坏一个类,所以它使用了
ptr->~MyClass();
,因为这适用于所有极端情况(包括例如继承的析构函数)。或者我想:如果有一个私有析构函数:
class MyClass {
~MyClass();
};
那么ptr->~MyClass();会是编译时错误。
任何想法我可以做什么?如果析构函数是私有的,生成的代码要么调用它,要么抛出异常,要么退出程序。
请注意,我的代码生成器不知道哪个类有私有析构函数,哪个类没有私有析构函数。
【问题讨论】:
标签: c++ destructor