2012-04-06 43 views

回答

-1

首先,你需要公開的類和屬性到Python。

#include <boost/python.hpp> 

BOOST_PYTHON_MODULE(mylib) 
{ 
    using namespace boost::python; 
    class_<Foo>("Foo") 
     .def_readwrite("x", &Foo::x); 
} 

在Python中調用類同樣很簡單。

>>> import mylib 
>>> fooObj = mylib.Foo() 
>>> fooObj.x = 3 
>>> print 'fooObj.x is ', fooObj.x 
fooObj.x is 3 
+0

當我嘗試這樣做,我有:引發ArgumentError:Python的參數類型 None.None(美孚,INT) 不匹配C++簽名: 無(富{}左值,INT *) – enobayram 2012-04-06 22:37:55

+0

另外,如果你嘗試讀取變量,您可以: '回溯(最近通話最後一個): 文件「」,1號線,在 類型錯誤:沒有to_python(按值)轉換器找到了C++類型:int *' – user810973 2012-04-10 12:32:15

相關問題