首页 > 解决方案 > 不能包含

问题描述

我正在尝试在 Visual Studio 15 2017 中链接 Qt5。

我在Property Pages中添加了其他 (1)包含目录、(2)库目录和 (3)依赖项的路径和文件引用。

我可以通过像这样引用它们的路径来包含头文件

#include <QtWidgets/qpushbutton.h>

但是,我正在尝试构建的github 项目使用这条线

#include <QtWidgets>

Visual Studio 在这些行上显示错误

E1696   cannot open source file "QtWidgets" 

在 Visual Studio 中使用Qt VS 工具.pro从文件创建解决方案时,我可以包含. 但是如何将它包含在我现有的项目中,该项目不是从文件创建的。<QtWidgets>.pro


解决方案在MyProjectName文件夹中 放置一个MyProjectName.pro文件(带有QT += core gui widgets)并使用Qt VS Tools > Open Qt Project File (.pro)打开它可以解决此问题。我现在可以包括. 但这似乎不是正确的方法,考虑到 VS gui。<QtWidgets>

标签: c++visual-studioqtinclude

解决方案


“QtWidgets”包含文件是“QtWidgets”目录中的一个文件。您的包含路径可能有“$(QTDIR)/include”之类的内容,但没有“$(QTDIR)/include/QtWidgets”。这就是为什么您的“QtWidgets/qpushbutton.h”示例有效,而不仅仅是“QtWidgets”本身。

查看您尝试包含的文件的完整路径可能会有所帮助(使用我的 Qt 5.5.1 安装):

C:\Qt\Qt5.5.1\5.5\msvc2013_64\include\QtWidgets\QtWidgets

因此,如果您的包含路径中有此内容:

C:\Qt\Qt5.5.1\5.5\msvc2013_64\include

这只会让你进入 QtWidgets 目录,而不是 QtWidgets 文件。

您还需要在包含路径中使用它:

C:\Qt\Qt5.5.1\5.5\msvc2013_64\include\QtWidgets

显然,为您安装的驱动器、Qt 版本和 MSVC 版本进行调整。


推荐阅读