c++源码:src.cpp
#include <vector>
typedef std::vector<double> dvec;
dvec A()
{
dvec vec;
vec.push_back(1.0);
return vec;
}
python转换代码:src4py.cpp
#include <boost/python.hpp>
#include <boost/python/suite/indexing/vector_indexing_suite.hpp>
#include "src.cpp"
using namespace boost::python;
BOOST_PYTHON_MODULE(test)
{
class_<dvec>("pyvector")
.def( vector_indexing_suite<dvec > () )
;
class_<std::vector<dvec> >("pyvector_vec")
.def( vector_indexing_suite< std::vector<dvec> > () )
;
def("a",A);
}
python调用代码 :test.py
import test
#这里调用C++中的A(