如何为Python创建一个c++库
How to make a C++ library for Python
我是面向对象编程的新手,我正在努力寻找一个关于如何在c++中制作一个可以导入Python的库的好教程。
此刻,我只是想做一个简单的例子,两个数字相加。我对这个过程感到困惑。本质上,我希望能够在Python中做这样的事情:
import MyCPPcode
MyCPPcode.Add(5,3) #function prints 5+3=8
我不要求一个完整的例子与代码,只是步骤,我需要采取。我需要制作。dll或静态库吗?我用的是MS Visual Studio 2013。
另外,该过程是否以某种方式为Python定制c++库代码,或者该库是否也可用于其他语言?
虽然我不能指导您完成整个过程,因为我不太了解python,以下是我所知道的:
这绝对是可能的。虽然不是面向对象编程新手的东西,但它被称为python-C/c++ API。如果你在python文档中搜索它,有几章是关于它的。
虽然您展示的示例函数可能看起来像python中的那样,但在c++中(在幕后)这个过程要冗余得多。有一些工具可以解决这个问题,比如Cython,但如果你想学习,我建议你使用纯python API。
至于其他语言的可用性…好吧,内部函数(即添加两个数字)当然是通用的c++,所以你可以在其他项目中重用它们,但是,是的,创建的库将与python一起工作,而不是其他东西。
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 删除一个线程上有数百万个字符串的大型哈希映射会影响另一个线程的性能
- 为什么两个不同的未命名名称空间可以共存于一个cpp文件中
- 运行同一解决方案的另一个项目的项目
- 挂起和取消挂起一个文件DLL
- 用C++中的一个变量定义一个常量
- 函数向量_指针有不同的原型,我可以构建一个吗
- 在c++中用vector填充一个简单的动态数组
- 如何在选项卡视图Qt中设置一个新项目,并保存以前的项目
- 预处理器:插入结构名称中的前一个行号
- 我在c++代码中生成了一个运行时#3异常
- 我想将一个对T类型的非常量左值引用绑定到一个T类型的临时值
- 从链接列表c++中删除一个项目
- 告诉一个 const char 数组,除了编译时 C 样式的字符串外,它不以 '