I want to use the built-in python in the C ++ app and the call functions defined in the python script. A function parameter is a C ++ object. See my code:
class Test { public: void f() { std::cout<<"sss"<<std::endl; } }; int main() { Py_Initialize(); boost::python::object main = boost::python::import("__main__"); boost::python::object global(main.attr("__dict__")); boost::python::object result = boost::python::exec_file("E:\\python2.py", global, global); boost::python::object foo = global["foo"]; if(!foo.is_none()) { boost::python::object pyo(boost::shared_ptr<Test>(new Test()));
python2.py:
def foo(o): of()
How to pass a C ++ object to foo? I know swig can do this, but boost :: python?
source share