#include <boost/python.hpp>
using namespace boost::python;
int add_five(int x) {
return x + 5;
}
#pragma comment(lib,"python27.lib")
BOOST_PYTHON_MODULE(Pointless)
{
def("add_five", add_five);
}
int main(int, char **) {
Py_Initialize();
try
{
initPointless(); // initialize Pointless
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append('./')");
/*PyRun_SimpleString("import Pointless");
PyRun_SimpleString("print Pointless.add_five(4)");*/
PyRun_SimpleString("execfile('test.py')");
}
catch (error_already_set)
{
PyErr_Print();
}
Py_Finalize();
return 0;
}
//--------------------------------------------------------------------------------------
boost::python::manage_new_object
假如返回一个类型CZhu 那么使用时必须在python中注册CZhu对应的类
//--------------------------------------------------------------------------------------
boost::python::return_opaque_pointer
这个就仅仅是个python包装的指针 用来传回给c++做点什么的
posted on 2013-12-10 18:27
野猪红 阅读(381)
评论(0) 编辑 收藏 引用 所属分类:
C/C++ STL Python Lua