boost c++调用python接口完整代码
时间: 2023-10-08 19:13:21 浏览: 203
使用C++调用Python代码的方法步骤
下面是一个完整的 Boost C++ 调用 Python 接口的示例代码:
Python 文件 `example.py`:
```
def add(x, y):
return x + y
```
C++ 文件 `main.cpp`:
```
#include <iostream>
#include <boost/python.hpp>
namespace py = boost::python;
int main() {
Py_Initialize();
// 导入 Python 模块
py::object example = py::import("example");
// 获取 Python 模块中的函数
py::object add_func = example.attr("add");
// 调用 Python 函数
int result = py::extract<int>(add_func(1, 2));
std::cout << "Result: " << result << std::endl;
Py_Finalize();
return 0;
}
```
编译链接命令:
```
g++ -o main main.cpp -lpython2.7 -lboost_python
```
运行程序后输出:
```
Result: 3
```
注意,在编译时需要链接 Python 库和 Boost.Python 库。在本例中,使用的是 Python 2.7 和 Boost 1.72.0。如果使用不同的版本,需要根据实际情况修改编译链接命令。
阅读全文