python嵌入到C++的一些理解
1.简介(比较各自的特点,提出问题)
C++ 与 python都是用的比较广泛的语言,各有各的优点;C++性能优异,python简单方便库丰富,如果能够结合两者使用就很好。
python作为一种脚本语言,解释器会将其翻译成可执行代码。python强大呀,提供了C接口供C/C++调用,意思就是C/C++就能嵌入python代码,实际中就能够发挥两种语言的优点了。
2.如何实现
在实现上,Python提供了C接口供C/C++使用,以C语言lib库的形式提供include和lib;可以在python的安装目录下找到python.h和python27.lib。
python提供了三种形式的“嵌入”------Code strings,Callable objects,Code files
Code strings,直接以字符串的形式传给解释器执行,另外也可以获得一些返回值。
Callable objects,先load一个python文件,然后调用该文件中的函数或者变量等。
Code files,直接载入一个python文件的形式。
本质上,这些功能的提供都通过Python提供的这一套C接口实现的,可暂时不深究,待以后需要用到的时候再学习。
3.还有哪些库
PythonQT:试了下2.8和3.0(QT4.8),均未试验成功。
boost.python:未尝试。
相关:
初识Python与Qt:http://mobile.51cto.com/symbian-268735.htm
Programming Python, 3rd Edition:http://wiki.woodpecker.org.cn/moin/PP3eD/Ch-23-2
将Python嵌入到Qt程序中:http://blog.csdn.net/jingwenlai_scut/article/details/5642348
C++和Python混合编程 - C++写python扩展:http://tanklee.github.io/2013/11/25/python-cpp-programming-1/