Ссылка на файл cpp/h в другом месте

У меня довольно простой вопрос. Если у меня есть файл .cpp и .h в другом месте, чем мой проект, как я могу сослаться на него, сказав #include " ".

Я пытаюсь использовать wxMathPlot.cpp/.h, и он ссылается на cpp-файлы wxWidget. mathplot.cpp(19): фатальная ошибка C1083: не удается открыть включаемый файл: «wx/window.h»: нет такого файла или каталога

Допустим, мой wxMathPlot.cpp находится в C:\Users\Owner\Desktop, а мой wx/window.h — в C:\Users\Owner\Documents.


c++
person user2840470    schedule 08.07.2014    source источник
comment
На этот вопрос SO есть хороший ответ.   -  person Jashaszun    schedule 08.07.2014
comment
Ключевое слово здесь библиотека. Вам нужно узнать о библиотеках C++ и о том, как их использовать в конкретной среде разработки. Вы ошибаетесь, полагая, что это просто ссылки на исходные файлы. Вы должны скомпилировать исходники библиотеки отдельно (или использовать готовый двоичный файл), сослаться на заголовки, изменив путь включения вашего компилятора, и, наконец, связать с двоичным файлом. Ничто из этого не является тривиальным для новичка, и полное руководство по библиотекам C++ выходит за рамки одного ответа SO.   -  person Christian Hackl    schedule 08.07.2014
comment
Всегда отдавайте предпочтение конфигурации для этого, очень маловероятно, что она останется в папке «Рабочий стол». Проект + Свойства, C/C++, Общие, Параметр Дополнительные каталоги включения. У линкера тоже есть.   -  person Hans Passant    schedule 08.07.2014


Ответы (3)


#include "../Documents/wxMathPlot.h"

Должно сработать. Чтобы уточнить:

При использовании включения, такого как #include "header.h", выполняется поиск в том же каталоге, что и файл.

Когда вы используете включение, такое как #include <header.h>, выполняется поиск в определенном каталоге, выбранном вашим компилятором, где вы найдете большинство заголовочных файлов стандартных библиотек.

person Greg Hilston    schedule 08.07.2014

Вы можете ссылаться на него, используя его полный путь или ссылаясь на один или несколько .. в вашем пути (что означает «подняться на один уровень»), или вы можете указать каталог, в котором находится файл заголовка, в «пути поиска файла заголовка». ' («включить путь»), а затем просто используйте имя файла.

Однако использование полного пути не рекомендуется, потому что, если вы переместите заголовочный файл относительно файла, из которого на него ссылаются, он больше не будет работать.

Посмотрите на этот вопрос SO, чтобы получить хороший ответ.

person Jashaszun    schedule 08.07.2014
comment
Не рекомендуется использовать полный путь. - person Naseef Chowdhury; 08.07.2014
comment
@Насиф, я согласен. Теперь это исправлено. - person Jashaszun; 08.07.2014

Для файлов CPP вам нужно добавить эти файлы в свой проект. Если вы используете Visual Studio, вы можете добавить файл cpp, щелкнув правой кнопкой мыши рабочий проект и выбрав добавить существующий элемент. Если вы хотите сослаться на файл .h, вам нужно включить это, например

#include "../Documents/wx/Windows.h"

Всегда полезно использовать относительный путь, а не абсолютный путь.

person Naseef Chowdhury    schedule 08.07.2014