1
鑑於PyObject
通過PyBindGen
創建的,它很容易得到的指針被包裝的C++對象,只需使用obj
成員的結構:如何獲得給定C++指針的PyBindGen PyObject?
typedef struct {
PyObject_HEAD
MyWrappedClass *obj;
PyObject *inst_dict;
PyBindGenWrapperFlags flags:8;
} PyMyWrappedClass;
但是,讓我們說我剛纔MyWrappedClass*
,並希望得到包含它的PyObject
(如果有的話,它可能不存在)。有沒有辦法做到這一點,而不需要維護我自己的後向詞典?
爲什麼不在'MyWrapperClass'中保存一個指針到'PyMyWrappedClass'? – Constantinius 2011-06-13 19:04:51
我寧願不用包裝知識來加重班級負擔。我將會有數百個包裝類,所以我不希望每個人都有醫生,我想要一個適用於任何類的機制。因此保留一個哈希值或映射或指向PyObjects的指針。 – 2011-06-13 21:19:41