2013-05-02 42 views
0

它甚至有可能是相對路徑是正確的,但我仍然得到編譯錯誤:C++的#include的相對路徑

2>src\wfbuilderapp.cpp(15): fatal error C1083: Cannot open include file: '../project/include/public/core/paths.h': No such file or directory 

尤其是有可能,因爲道路是錯誤的錯誤發生,而是因爲包含的文件「不允許」,我有這種文件之間的綁定?我包含的文件和包含的文件位於相同的解決方案中,位於不同項目的文件夾的子文件夾中。

這裏是我的問題,您#include

  • 我可以包括任何文件只要路是正確的,包含的文件是在同一個解決方案嗎?
  • 我可以包含.cpp文件嗎?
  • 我有時需要包含.cpp和.h文件嗎?
+0

只要路徑(相對或絕對)在當前目錄中是正確的,就可以從任何地方包含任何文件。您所包含內容的正確性取決於您。 '#include'幾乎就像從'#inc'寫入的地方開始粘貼代碼一樣(除了保護多個「複製粘貼」和其他一些編譯指示支持外)。 – stardust 2013-05-02 14:22:24

回答

1

Can I include any file as long as path is correct and included file is in the same solution ?

如果路徑是正確的,是的。它在同一個解決方案中對include沒有影響。編譯器會在被告知的地方尋找文件(將文件添加到解決方案中不會修改這些位置)。

正確的方法是將路徑添加到項目屬性中的Additional Include Directories

Can I include .cpp file ?

是的,但不應該,除非它是用於批量構建。

Do i sometimes need to include both .cpp and .h files ?

號您可以,但不需要來。如果需要標頭中定義的某些內容的完整定義,有時需要需要來包含標題。至於cpp文件,請參閱前面的答案。

0

Can I include any file as long as path is correct

是的。請注意,我剪切瞭解決方案的一部分。

Can I include .cpp file ?

可以,是的。應該?

Do I sometimes need to include both .cpp and .h files

如果您「需要」這樣做,您正在使用錯誤的工具解決問題。 cpp文件不應該是#include'ed。

0

Can I include any file as long as path is correct and included file is in the same solution ?

您可以包含任何您喜歡的文件,也可以包含相同的解決方案。編譯器是否能夠理解它是一個不同的問題。

Can I include .cpp file ? 

你可以但你不應該。 cpp文件應該被包含在你的項目中,而不是其他文件中。

Do i sometimes need to include both .cpp and .h files ? 

查看上面的答案。 .h文件只是唯一明智的方法