Qt包括来自上面目录的头文件

时间:2015-03-21 07:35:59

标签: c++ qt header-files

起初,我认为这不会成为一个问题,但经过几天的努力,我仍然无法找到解决方案

source
  |
  |--- Model
  |      |
  |      | - A.h
  |-B.h

我不能包括来自A.h的B.h,编译器抱怨

“无法打开包含'B' :没有这样的文件或目录

这是我的.pro文件

TEMPLATE = app
QT += qml quick widgets sql
QT += declarative
RESOURCES += qml.qrc
include(deployment.pri)
HEADERS += \
   sources/B.h \
   sources/model/A.h

A.H

#ifndef A_H
#define A_H
#include "source/B.h"
class A {
};
#endIf

B.h

#ifndef B_H
#define B_H
class B {

};
#endif

我该如何解决这个问题?并感谢您选择

1 个答案:

答案 0 :(得分:2)

包含文件的路径是相对于包含它的源文件。所以在A.h这里你应该有:

#include "../B.h"

或者通过添加到.pro

将该路径添加到包含目录
INCLUDEPATH += $$PWD/source

并包含头文件,如:

#include "B.h"