以下は私のC++ class
namespace X {
class ChildFactory: public Father {
public:
static ChildFactor* createChildFactory(const properties* ptr = NULLPTR);
private :
// no instances allowed
ChildFactory();
ChildFactory(const properties* ptr);
~ChildFactory();
};
};
以下は、私がBoost::Python
構成を定義した方法です。
BOOST_PYTHON_MODULE(TestPy)
{
boost::python::class_<X::ChildFactory, boost::noncopyable>("ChildFactory")
.def("createChildFactory", &X::ChildFactory::createChildFactory, boost::python::return_value_policy<boost::python::manage_new_object>() )
.staticmethod("createChildFactory")
;
}
しかし、奇妙なコンパイラ テンプレート エラーが発生しています。
エラーは
destructor could not be generated because a base class destructor is inaccessible