Python 包装C++;具有pybind11的void函数 我有一个C++类,包含了空函数,它引用引用传递的STL向量,并修改其中一个向量的内容。例如:

Python 包装C++;具有pybind11的void函数 我有一个C++类,包含了空函数,它引用引用传递的STL向量,并修改其中一个向量的内容。例如:,python,c++,pybind11,Python,C++,Pybind11,void somefunction(std::vector&result,std::vector&array1,std::vector&array2){一些计算} pybind11绑定如下所示: .def(“somefunction”和&somefunction) 我已经包含了PybDun11/STL.h头文件,它处理STL容器和Python等同物之间的自动转换,在Python中调用python列表,调用 ,但是我不确定C++层是否可以修改结果< /Cord> python列表。p> 然后我的问

void somefunction(std::vector&result,std::vector&array1,std::vector&array2){一些计算}

pybind11绑定如下所示:

.def(“somefunction”和&somefunction)

我已经包含了PybDun11/STL.h头文件,它处理STL容器和Python等同物之间的自动转换,在Python中调用python列表,调用<函数> <代码>,但是我不确定C++层是否可以修改<代码>结果< /Cord> python列表。p> 然后我的问题是如何编写Python


C++函数的绑定,修改引用传递的STL向量的内容,返回<代码> VoUT .< /P> < P>,包括<代码> PyBID11/STL.H./Cuth>结果复制C++与PyHton之间的转换,参见


要通过引用传递,请参见第

节,如果我正确理解了文档,我应该使用
PYBIND11\u make\u不透明()
宏和相应的
声明?在Python中,我应该向
somefunction
传递什么?您应该传递与
std::vector
对应的Python,即
VectorOfInt
。类似于
a=VectorOfInt([1,2]);b=向量OFIT([1,2]);一些函数(a,b)
我相信。