1

鉴于PyObjectcreated by PyBindGen,很容易获得指向包装的 C++ 对象的指针,只需使用obj结构中的成员:

typedef struct {
    PyObject_HEAD
    MyWrappedClass *obj;
    PyObject *inst_dict;
    PyBindGenWrapperFlags flags:8;
} PyMyWrappedClass;

但是,假设我只有MyWrappedClass*,并且想要获得PyObject包装它的(如果有的话,它可能不存在)。有没有办法在不维护我自己的反向指针字典的情况下做到这一点?

4

1 回答 1

-1

如果我有足够的声誉,因为我不熟悉,我会将此添加为评论PyBindGen,但除非inst_dict是一个反向指针字典(顾名思义)我认为你不走运(除非你想拖网Python 堆,看看那里是否有你的类的任何实例)。

于 2011-06-13T19:13:45.010 回答