c++ - "#include <QtCore/QCoreApplication>"与 "#include <QCoreApplication>"

标签 c++ qt include

当我在 Qt Creator 中创建一个新的移动应用程序时,我注意到在自动生成的代码中他们使用了 #include <QtCore/QCoreApplication>而不是 #include <QCoreApplication> ,即使两者的工作原理相同。

由于 Qt Creator 本身就是这样做的,所以我认为这是推荐的约定。但是有什么原因会这样吗,有人可以解释一下使用 #include <QtCore/QCoreApplication> 的意义吗?而不是 #include <QCoreApplication>

最佳答案

使用这种约定有多种原因:-

  1. 如果编译器中包含的路径位于 QtCore 的目录级别,那么它将从那里跟踪包含文件 QCoreApplication。
  2. 由于同一目录中存在多个版本的 Qt,因此最好使用消除歧义的约定。(因为两个 QCoreApplication 一个属于 Qt3,另一个属于 Qt4 会误导编译器)

我在/usr/include/中有两个目录

  • Qt核心
  • Qt

它们都有 QCoreApplication。

关于c++ - "#include <QtCore/QCoreApplication>"与 "#include <QCoreApplication>",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11913002/

相关文章:

c++ - Qt 中的继承不允许我引用?

C++ 错误 std::result_of 没有命名类型

c++ - 解码 base64 时 GtkTextView 出现 UTF-8 错误

c++ - 将变量传递给其他对话框 Qt

c++ - QtWebengine 5.7.1 性能非常低

c++ - 头文件和包含最佳实践

c++ - 防止 gcc 在包含搜索路径上搜索当前目录 "-I-"选项

css - 将其包含在 .jsp 页面中时发生冲突的 css 文件

c++ - libuv - 在没有多线程的情况下限制空闲事件的回调率而不阻塞线程

c++ - 无法在概念中推断占位符类型