Boost.python与Cython for C++/python接口

car*_*ose 15 c++ python binding cpython boost-python

我知道这已被问了一千次,但是我需要选择一个可以将C++函数和方法暴露给python的库.

考虑到我的应用程序,主要是科学(矩阵)库,以及python生成器的成熟度,支持可用性和性能,我遇到了两个选项:

  • 用Cython
  • Boost.Python的

我已经消除了(出于好的或坏的原因)其他选项,如SWIG,SIP,Pybindgen,......

关于那2个图书馆的任何建议?任何具有杀手功能的东西?

我的项目有名称空间,嵌套类,回调等.

谢谢

Gam*_*iac 2

考虑到我的申请,这主要是一个科学的

这几乎就是 Cython 的意思。Cython 几乎是专门为此目的而设计的。Enthought有一个关于入门的视频。Enthought是一家专门从事科学计算的公司。

Cython 与 Python 的集成非常好,这是 C++ 或 C 无法比拟的(您必须使用#include <Python.h>)。