Python作为世界上***的 胶水 语言(哼,世界上***的语言当然是PHP==),利用Python的简洁和C++的高效,基本可以解决99%的问题了吧~
一般的,Python和C++的交互分为这两种情况:
用C++扩展Python:当一个Python项目中出现了性能瓶颈时,将瓶颈部分抽离出来,用C++封装成一个Python可以调用的模块(so库);
将Python内嵌入C++:当一个C++项目中有部分功能预期将会经常变更需求,期望获得更高的灵活性时,将这部分功能用Python实现,在C++中进行调用。这篇文章将简单介绍下***部分的一种做法。
Boost.Python
Boost作为一个大宝库,提供了我们所需要的这一功能。并且,在Boost的许多库中,已经默认使用了Boost.Python,所以也算是经过了充分的测试。
安装
Boost的大部分功能都是以头文件的形式提供的,无需安装;但是也有少部分功能,需要进行手动编译。不幸,Boost.Python也是其中之一。
参照 Getting Started on Unix Variants 的第五部分内容,即可安装Boost.Python。安装完成后,可以在相关目录(我的是/u