Как включить файл из другой папки?
В моем текущем проекте я разделил свои файлы классов и файлы заголовков. В настоящее время моя структура проекта выглядит следующим образом:
Моя проблема в том, что я не знаю, как включать файлы заголовков в файлы классов. Могу ли я ссылаться на заголовки, которые не находятся на одном уровне или в дочерней папке? Или есть какой-то способ перейти от корня проекта и спуститься вниз? Например:
#include "Project/Headers/include/class1.h"
внутри файла class1.cpp
Ответы
Ответ 1
Вам нужно указать путь include <the directory containing Project>
к вашему компилятору, чтобы компилятор смог найти включенные заголовки. Используя gcc, вы можете использовать опцию -I
, и используя визуальную студию, вы можете использовать /I
.
Ответ 2
Предполагая, что class1.cpp должен включать class1.h, вы бы сделали что-то вроде этого
#include "../../Header/class1.h"
..
сообщает, что ОС сообщает о переходе 1 директории вверх, когда компилятор запрашивает файл.
Ответ 3
У меня была очень похожая проблема, когда мой компилятор не смог найти заголовок с кодом:: block С++ project (той же файловой структурой, что и OP).
Это сработало для меня:
#include "../include/class1.h"