2014-02-21 50 views
0

第一篇文章,我相對於大多數人來說編程相當新穎。我在一所大學,我們有通常編寫和編譯的虛擬linux機器。我們一直有一個命令立即編譯文件中的所有程序。現在我試圖成爲一個大男孩,並在家用電腦上使用Visual Studio 2013。我正在編譯問題。當我編譯時,它只能通過main.cpp讀取,即使我在頂端包含「blah.h」。如何設置編譯器來檢查我的項目中的所有內容。如何在Visual Studio 2013中編譯.h和.hpp

我也沒有得到「構建」的觀點。我從來沒有在我們的linux機器上遇到過這個問題。我們只是寫我們想要的東西,#包括我們使用的所有東西,編譯器只是把它全部讀出來,並且它是工作的。

我是一個noob所以不要判斷。我對我所有的知識,類,指針,數據結構都非常滿意,當談到編譯器和IDE時,我只是一個完整的noob。 g ++編譯器有什麼區別?除了易於使用的Linux機器,我的教授從來沒有談論過IDE和編譯器。

TL; DR:我如何在VS2013中編譯.hpp和.h,在校園裏總是使用easy peasy linux機器。

回答

0

您必須設置一個項目:文件 - >新建項目,在Visual C++下挑General,然後創建一個Empty Project。假定它被稱爲Test1。然後,轉到Solution Explorer,右擊Test1並在Add下,應該有Add Existing Items。添加你的文件,你很好去!

+0

是的,我正在處理一個ArrayList數據結構,它不會編譯我的.h和.hpp文件。它只是檢查main.cpp。如何設置編譯器調試所有文件? – MartYMcFly

+0

你添加了嗎? – yizzlez

+0

是的,他們都在那裏。我有main.cpp,arraylist.h,arraylist.hpp。我試過把它們放在源文件和頭文件中,但它不會編譯它們。它只是編譯main.cpp。 – MartYMcFly

0

您可能需要閱讀這個問題:Do I need to compile the header files in a C program?

總之,沒有必要編譯.h文件,因爲這些.h文件應包括在.cpp文件。

爲了檢查項目中的所有內容,.h文件應包含在main.cpp文件中。在這種情況下,visual studio編譯器應該預編譯cpp文件,這意味着#include "test.h"將被替換爲test.h的內容。

g ++編譯器有什麼區別?

「當GCC以編譯器作爲命令行參數提供給GCC時,它對擴展名爲.h的文件有特殊處理。」

+0

我怎麼知道我的.h文件都有正確的語法?我怎樣才能調試它們? – MartYMcFly

+0

另一件事,我如何編譯我的.hpp,我的頭類的實現。 – MartYMcFly

+0

@MartYMcFly,如果.h文件包含在.cpp文件中,MS編譯器將檢查語法。爲了證明您可能在.h文件中實現了一些不正確的代碼並將其包含在.cpp文件中。輸出窗口將打印錯誤。 – Steve

相關問題