Qt Creator自动补全功能

4

我最近在Windows上使用QtCreator几天了,计划将其作为我的主要IDE来编写C++代码(目前不使用Qt库)。

不过,我真的很想念Visual Studio的自动完成功能,尤其是在输入函数时。

我尝试使用Clang Code Model,但它似乎没有解决我遇到的问题:

1. Qt的自动完成反应速度不如Visual Studio;

2. 如果开始输入函数及其第一个参数,而参数列表未出现,则必须删除开括号并等待一段时间才能显示;

3. 参数列表和自动完成框不能同时显示;

4. 您通常需要手动启用自动完成,按下ctrl +空格。


你的电脑有足够的RAM和良好的显卡吗?如果它们运行缓慢,可能会导致Qt Creator的线程减速...可能会出现这种情况。 - phyatt
好的,Qt的自动完成大多数情况下都足够响应,但它不像Visual Studio那样“即时”。我不会对此抱怨太多。 - D.Naesuko
2个回答

7
我曾经使用过Qt Creator和Visual Studio,它们在我的看法中是相当可比的。Ctrl+Space对我来说很好用,我几乎从不用鼠标悬停来触发有关函数的信息。我认为在Visual Studio中也有类似的快捷键。与Qt库、信号、插槽和设计师的集成使得Qt Creator非常棒。与Visual Studio相比,我没有感到Qt Creator速度慢或快。

我更喜欢Qt中默认的快捷键,所以我最终重新映射了大部分与构建、运行、缩进和注释有关的Visual Studio快捷键。

与自动完成相关的所有选项都可以在以下位置找到:

Qt Creator > Preferences (mac) > Text Editor > Completion

或者

Qt Creator > Tools > Options > Text Editor > Completion

http://www.qtcentre.org/threads/54888-QtCreator-slow

看起来可能与文件夹中过多的 .pro.user 文件有关。

https://forum.qt.io/topic/39712/solved-slow-or-not-working-auto-completion-in-qtcreator-3-0-1-running-on-linux-mint-64bit-cinnamon/4

https://www.google.com/search?q=speed%20up%20qt%20creator%20auto%20complete

希望这可以帮助到你。
顺便说一句,Qt库、其文档以及周围的社区都非常棒,值得研究一下。

我正在使用CMake构建我的项目,我不认为这与此有关。无论如何,我会查看您提供的链接,我可能会找到一些有用的东西。谢谢。 - D.Naesuko
祝你好运,希望你能找到解决方案。 - phyatt

1

前往 帮助 > 关于插件,取消勾选 ClangCodeModel。这将激活代码补全和项目视图大纲。

我的 Qt 版本

Qt Creator 4.11.1 (基于 Qt 5.14.1 (GCC 5.3.1 20160406 (Red Hat 5.3.1-6),64 位))

Disable ClangCodeModel


这解决了我的问题。勾选ClangCodeModel会使我的自动完成时间从100毫秒增加到超过1秒。 - Luke Dupin
@LukeDupin "您可以在“工具”>“选项”>“文本编辑器”>“完成”中的“超时时间(毫秒)”字段中设置代码完成的超时时间。" - atakli
我的完成超时设置为400毫秒,但使用ClangCodeModel的超时明显较慢(几秒钟)。 - thomasa88

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接