c++ - importar - ¿Cómo incluir un archivo de otra carpeta?
importar clases en python (3)
En mi proyecto actual, he separado mis archivos de clase y mis archivos de encabezado. Mi estructura de proyecto actualmente se ve así:
Proyecto
- Fuente
- src
- class1.cpp
- class2.cpp
- main.cpp
- src
- Fuente
- Encabezamiento
- incluir
- class1.h
- class2.h
- incluir
- Encabezamiento
Mi problema es que no sé cómo incluir los archivos de encabezado en los archivos de clase. ¿No puedo enlazar con encabezados que no están en el mismo nivel o en una carpeta secundaria? ¿O hay alguna forma de ir desde la raíz del proyecto y seguir mi camino hacia abajo? Por ejemplo:
#include "Project/Headers/include/class1.h"
dentro del archivo class1.cpp
Debe indicar la ruta de inclusión <the directory containing Project>
a su compilador para que el compilador pueda encontrar los encabezados incluidos. Usando gcc, podrías usar la opción -I
, y usando Visual Studio, podrías usar /I
Suponiendo que quiera que class1.cpp incluya class1.h, haría algo como esto
#include "../../Header/class1.h"
El ..
le dice al sistema operativo que salte 1 directorio cuando el compilador solicita el archivo.
Tuve un problema muy similar donde mi compilador no pudo encontrar el encabezado con un código :: bloquea el proyecto C ++ (misma estructura de archivo que OP).
Esto funcionó para mí:
#include "../include/class1.h"