起初,我认为这不会成为一个问题,但经过几天的努力,我仍然无法找到解决方案
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
我该如何解决这个问题?并感谢您选择
答案 0 :(得分:2)
包含文件的路径是相对于包含它的源文件。所以在A.h
这里你应该有:
#include "../B.h"
或者通过添加到.pro
:
INCLUDEPATH += $$PWD/source
并包含头文件,如:
#include "B.h"