我正在使用 boost.python 来制作用 C++ 编写的 python 模块。我有一些带有纯虚函数的基类,我已将其导出如下:
class Base
{
virtual int getPosition() = 0;
};
boost::python::class_<Base>("Base")
.def("GetPosition", boost::python::pure_virtual(&Base::getPosition));
在Python中我有代码:
class Test(Base):
def GetPosition(self):
return 404
Test obj
obj.GetPosition()
运行时错误:调用纯虚函数
怎么了?
当构造函数或析构函数直接或间接调用纯虚拟成员时,会发生此错误。
(请记住,在构造函数和析构函数执行期间,动态类型是构造/析构类型,因此虚拟成员将解析为该类型)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)