首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Qt编程:在Python或C++中效率更高?

Qt编程:在Python或C++中效率更高?
EN

Stack Overflow用户
提问于 2010-06-29 17:32:12
回答 5查看 15.8K关注 0票数 43

试图深入研究Qt,但还没有用它完成一个大型项目。目前使用的是Python,但我一直在想,就程序员的工作效率而言,哪种语言更适合使用?

在这两种语言之间的大多数比较中,Python是显而易见的答案,因为您不必纠结于内存管理之类的事情。

然而,对于Qt,我就不那么确定了。它为C++提供了足够多的附加特性(据我所知),在大多数情况下,一行Python代码大致相当于一行C++代码(不包括一些额外的东西,如类定义和结构组件)。只要您坚持使用它的类,Qt就会为您完成几乎所有的内存管理工作,并提供与Python中的优秀容器等效的功能。

我一直更喜欢静态类型的语言,但出于各种原因,我也加入了Python的潮流。但是,如果程序员的工作效率与C++相似,我可能会返回到它的其他好处--更高效的代码和更少的用户安装依赖项。

有什么想法?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-06-29 17:51:31

我的观点(在一般情况下,特别是在Qt案例中尝试过C++和Python ):Python总是在“程序员生产力”和“安心”方面获胜。PyQt很好地代表了Qt,因此不再有“使用python的Qt”或“使用C++的Qt”的问题,一般来说,除非你需要速度或python中没有的东西,否则python会更有效率。

对于你来说,找到答案的最好的方法是先用写一个简单的项目,然后用C++写同样的项目,然后进行比较,但这可能偏向于Python,因为一旦你发现用python编写项目很容易,那么你也可以尝试另一个项目,首先用Python语言,然后用C++。

票数 27
EN

Stack Overflow用户

发布于 2010-06-29 17:38:36

不管是哪种情况,我都会推荐Python,尽管我是一个C++爱好者。有了Python代码,你就不必为MOC、可移植性、构建时间等烦恼了。只要比较一下在C++和PyQT或PySide中实现QT插槽所涉及的工作,例如,我发现以这种方式处理小部件要轻松得多(生产力要高得多)。在需要增加性能的情况下,您仍然可以从Python调用C++代码。

如果您确实使用组合,请考虑扩展Python而不是嵌入Python。Python通常更适合嵌入C/C++代码,而不是嵌入到C/C++系统中。这种方式也更有意义,因为应用程序通常由更普通的、非性能关键代码组成,而不是性能关键代码,因此将应用程序主要编写为附加了C/C++函数的python应用程序更适合这种系统设计。

票数 30
EN

Stack Overflow用户

发布于 2011-09-18 04:39:09

当然是Python。

是的,人们会无缘无故地说Python更有效率。有些答案提到你不需要重新编译。我会给你更多的细节

  1. Python是C++之上的一层抽象层,因此您可以用更少的代码来思考和表达您的设计。
  2. 最常见的情况是启动应用程序、加载一些文件、设置环境和打开一个对话框。在这里,您会注意到一个按钮不工作或不在它应该在的位置。这就是大多数人关闭应用程序的地方,这里绑定一个插槽,那里绑定一个信号……启动应用程序,加载文件,设置...使用python,您只需编写代码并再次启动对话框,而不是整个应用程序。我不知道你是怎么想的,但这种类型的任务正是我在Qt
  3. Python中经常做的事情,它给了你C++所没有的东西:内省。您可以浏览正在运行的程序,并在运行时提取有关其组件的信息。Qt部分地给出了这一点。您有一个MOC层,其中可以将元属性和元信息附加到Qt对象。Python程序的所有部分都可以内省。许多调试Python代码或试图了解其工作原理的人都对此上瘾,这是出于

的充分理由

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3139414

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档