我想知道如何在C ++中创建PyObject
然后将其返回给Python。
遗憾的是,文档对此并不十分明确。
没有PyObject_Create
所以我想知道是否通过sizeof(PyObject)
分配PyObject_Malloc
并初始化结构就足够了。
现在我只需要一个附加功能的对象。
答案 0 :(得分:1)
你真的想要一个(1)PyObject
,就像Python调用object
,或者(2)某个子类型的对象一样?你“需要一个附加功能的对象”似乎表明你需要方法或属性。在任何情况下都需要(2)。我不是C API的专家,但通常你定义自己的PyTypeObject
,然后通过PyObject_New
创建一个实例(refcount和type字段被初始化,你可能添加的其他字段是不是)。