首页 >> 知识 >> 用c++和python写GUI程序(python嵌入方式)

用c++和python写GUI程序(python嵌入方式)

用python写GUI相比C++好处多多:语法简洁灵活,不用编译,自动垃圾回收,等等。很让我这个c++程序员眼红,自然要好好研究一下。

如果用纯python的方式很简单,qt或者wxwidget这个两个GUI库的python版本都已经很成熟,直接拿来用就行了。但在一些核心逻辑是由c来完成的项目里,就需要结合c和python来做GUI程序。c+python做GUI程序是有点麻烦的。通常采用的是extending方式,也就是用c++写python的扩展模块,提供一系列接口来供python调用。但是这样的方式有一些缺点,一是c模块的编译比较麻烦,二是如果已有的c++代码不是很规范,要归纳出一套易用的接口是不太容易的。

所以就希望用python嵌入(embedding)c的方式:主程序还是c程序,将python写的界面嵌入到c程序中,在事件触发时python方面只要调用一下相应的c++函数就可以完成逻辑的处理。省去了编译python模块的麻烦。而且主程序是c写的,编译出二进制的可执行程序比直接给一个python脚本去执行给用户的体验也要好一点。。。研究了几天(本人是python新手)总算是总结出一套用Cpp + python写GUI界面的方法。

网站地图