我有一些BaseC++ 课程。我使用 boost::python 将它导出到 python 中。但是虚拟析构函数呢?任何基类都应该有虚拟析构函数以避免错误的内存释放,对吧?我忘记了这一点,并Base没有使用析构函数进行编写。一切正常,但有很多内存泄漏。
现在我添加了:
class Base
{
public:
virtual ~Base();
// Other members...
};
在 python 中导入我的模块后,我收到一个错误:
ImportError:Base.so:未定义符号:_ZTI6Base
我做错了什么?而且,据我了解,该错误是由于缺少 py-module 的析构函数导出器而导致的。