您的位置:首页 > 编程语言 > C语言/C++

boost.python,在python中调用c++接口注意的问题(python2.5.4)

2012-02-04 21:16 477 查看
1.

BOOST_PYTHON_MODULE(myClassModule)

{

class_<myClass>("myClass")

.def("setID", &myClass::setID)

.def("getID", &myClass::getID)

;

def("printTest", &printTest);

}





2.

Py_Initialize();

// PyRun_SimpleString("import sys");

// PyRun_SimpleString("sys.path.append('./')");

initmyClassModule(); //BOOST_PYTHON_MODULE这里面定义了

if (python::handle_exception(exec_mythma))

{

if (PyErr_Occurred())

{

BOOST_ERROR("Python Error detected");

PyErr_Print();

}





3.

python::object main = python::import("__main__");

python::object py_ = main.attr("__dict__");

python::object result = python::exec_file(

".\\myClassTest.py", py_, py_);



4.构造类时,带上module前缀

myObj = myClassModule.myClass()



5.boost.python编出来的dll改名字成pyd

python直接import dll名字
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: