好吧,我将python 3.3嵌入到c ++应用程序中。我想在c ++端动态创建一个python类,就像我在python中执行以下操作一样:
my_type = type("MyType", (object,), dict())
我知道我总是可以导入" builtins"模块,但我试图避免在c ++方面进口。
谢谢!
答案 0 :(得分:1)
以下似乎工作正常:
PyObject *type(const char *name, boost::python::tuple bases, boost::python::dict dict) {
return PyType_Type.tp_new(&PyType_Type,
Py_BuildValue("sOO", name, bases.ptr(), dict.ptr()), NULL);
}
感谢扎克指出我正确的方向!