利用boost在C++中嵌入python
2011-04-18 14:39
666 查看
示列代码
编译时在连接选项中加入-I python2.4
目前环境是centos5.5,python为自带安装的2.4版本
按照boost开发指南上封装Python对象
编译:g++ -o"test111" ./src/test111.o -lpython2.4 -lboost_python
由于开始没有加上-lboost_python,结果弄了半天老报错
#include <iostream> #include <python2.4/Python.h> #include<boost/python.hpp> using namespace std; using namespace boost::python; int main() { Py_Initialize(); PyRun_SimpleString("from time import time,ctime/n" "print 'Today is',ctime(time())/n"); Py_Finalize(); return 0; }
编译时在连接选项中加入-I python2.4
目前环境是centos5.5,python为自带安装的2.4版本
按照boost开发指南上封装Python对象
//pyinit.hpp #include<boost/noncopyable.hpp> #include<boost/python.hpp> class pyinit: boost::noncopyable { public: pyinit(int initsigs = 1) { assert((initsigs == 1)||(initsigs == 0)); Py_InitializeEx(initsigs); } ~pyinit() { } bool IsInitialized() { return Py_IsInitialized(); } static void err_print() { PyErr_Print(); } const char* version() { return Py_GetVersion(); } };
#include <iostream> #include <python2.4/Python.h> #include<boost/python.hpp> #include<string> #include"pyinit.hpp" using namespace std; using namespace boost::python; int main() { pyinit pinit; object s("sa"); string str = extract<string> (s * 5); cout << str << endl; string execstr = "print 'abc'"; try { exec(execstr.c_str()); } catch(...) { pyinit::err_print(); } return 0; }
编译:g++ -o"test111" ./src/test111.o -lpython2.4 -lboost_python
由于开始没有加上-lboost_python,结果弄了半天老报错
相关文章推荐
- boost.python入门教程 ----python 嵌入c++
- 使用 Boost.Python 嵌入 Python 模块到 C++
- boost.python入门教程 ----python 嵌入c++
- 利用Boost.Python将C++代码封装为Python模块
- 利用C++ Boost编写扩展Python模块
- C++嵌入python ,通过boost.python
- 【转】利用Boost.Python将C++代码封装为Python模块
- boost C++中嵌入python
- 利用Boost.Python实现Python C/C++混合编程
- boost.python入门教程 ----python 嵌入c++
- 使用 Boost.Python 嵌入 Python 模块到 C++
- 利用C++ Boost编写扩展Python模块
- c++中嵌入python入门4 之 Boost.Python
- 利用Boost.Python实现Python C/C++混合编程
- 使用Python WSGI编写Web服务器前端,并利用Boost.Python在同一进程内连接到C++服务后端实现
- python嵌入C++------ boost.python如何在C++中调用含有不定长参数tuple变量和关键字参数dict变量的函数
- boost.python学习之----python 嵌入c++
- 利用C++ Boost编写扩展Python模块
- 利用Boost.Python将C++代码封装为Python模块
- boost.python入门教程 ----python 嵌入c++