C++软件中Python API的成本是多少?

axi*_*xis 1 c++ python api

我正在尝试一些用于某些C++调用的Python API,我发现性能没有下降.实际上,我认为只用C++编写的等效应用程序有点慢/拉.

特别是,我在C++中尝试Pyside和一些QT应用程序.

现在我知道GUI喜欢那些对动态绑定有很好支持的语言,但是我对Python内部结构不太了解:是否有一些解释为什么Pyside应用程序至少和C++等价物一样快?

如果我在C++程序中提供Python API,那么成本是多少?还有一个间接?

PS
python是否为跨平台开发提供了一些原生的Windowing框架?

sti*_*472 5

被贬低的风险,我将提供一个非常粗略,有点主观的假设.

QT虽然非常通用,但并不能提供超快速的GUI API.它的抽象程度相当高.我们讨论的是每个小部件,每个布局等的堆分配.只需看看QListWidget以及QListWidgetItem本身是一个单独分配的,相当复杂的对象.我曾经不得不描述开发人员的代码 - 怀疑逻辑很慢,但我发现操作花了大约6秒的时间来创建一个包含数千个列表条目的QListWidget.这是用C++编写的.

我对此的看法,没有看到你的代码和QT的使用,是QT GUI的总体开销使得像C++和Python这样的语言之间的差异可以忽略不计.

现在不容置疑的是,通过Python使用QT的效率远远高于在C++中使用QT的效率,在C++中我们必须使用预处理的信号和插槽来处理MOC等.您可能希望关注的不仅仅是在一种语言中使用GUI框架与另一种语言的性能差异.

PS python是否为跨平台开发提供了一些原生的Windowing框架?

http://wiki.python.org/moin/GuiProgramming