boost::python是如何工作的?对实现细节有什么想法吗?
How does boost::python work?Any ideas about the realisation details?
我是boost的新手,其中一个我无法理解的库是boost . python。谁能详细解释一下这种互操作性是如何实现的?在文档中只有几句关于元编程的话。注:我试着看代码,但由于我缺乏c++知识,我不理解原理。提前感谢
有两种互操作方式:
1)从"Python进程"中调用用c++编写的函数。
Python已经有一个加载dll的系统,它们被称为"扩展模块"。提振。Python可以编译源代码来生成一个。基本上,您编写一个小包装器来声明一个可从Python调用的函数,"元编程"在那里做诸如检测c++函数接受和返回的类型之类的事情,以便它可以发出正确的代码将这些类型从/转换为等效的Python类型。
2)从一个" c++进程",启动并控制Python解释器。
Python提供了一个C API来做这件事,还有Boost。Python知道如何使用它
相关文章:
- 如果没有malloc,链表实现将失败
- 如何在c++中实现处理器调度模拟器
- 如何在c++中使用引用实现类似python的行为
- 实现无开销push_back的最佳方法是什么
- 使用简单类型列表实现的指数编译时间.为什么
- 如何在BST的这个简单递归实现中消除警告
- 实现一个在集合上迭代的模板函数
- 'using namespace'实现细节的便捷方法(仅标头库)?
- 将C++项目迁移到 Java,保护实现细节
- 如何在C++共享库中隐藏业务对象的实现细节并提供接口
- 接口,在C++中隐藏具体的实现细节
- 无锁单写多读列表的实现细节
- 为初学者澄清C++中类定义和实现的一些细节
- 在它的核心,如何实现提升元组(在提升标头中没有所有额外的细节)
- 如何查找编译器实现细节
- 循环包含在c++头文件中隐藏实现细节的技巧
- 通过减少填充头的数量来隐藏实现细节
- boost::python是如何工作的?对实现细节有什么想法吗?
- Reference_wrapper实现细节
- 内存池背后的常见实现细节是什么?