2012-05-12 237 views
-1

我只是想知道有C++編譯器處理某些事情:
首先,我怎麼發現我有哪些C++編譯器? (GCC?GNU?什麼......)
然後,編譯器如何隱藏,當我編程Windows圖形用戶界面的控制檯窗口?
(或隱藏在代碼中完成控制檯?)
此外,我怎麼包含DLL編譯時?
有沒有什麼地方可以學習關於我的編譯器的所有其他內容?C++編譯器的問題

編輯:@StuartGolodetz我覺得我有MinGW的,其實(我使用DEVCPP);和我的意思,當我問到如何隱藏控制檯窗口或如何將dll文件沒有如何把它架在我使用的是IDE,而是怎麼做呢在命令行?

+3

您不必對每一個程序的控制檯。 – chris

+0

作爲一個觀點,在他們試圖幫助你時,人們的答案會讓你感到惱火 - 你問了一個包含很多不相關部分的多部分問題(這不適合StackOverflow格式),並且我放棄了一些時間來嘗試回答它。 –

+1

對不起,我不是故意這樣出來的。我想我只是有點疲倦,並尋找一個堅實的答案。 – Codesmith

回答

3

難以回答的問題,因爲你可能在你的系統上的許多不同的編譯器,它是真正的你使用 :)其中一個說的問題,gcc/g++是基於UNIX的一個通用編譯器基於瀏覽器的系統,並且Visual C++是Windows上的常見編譯器 - 您有可能會使用其中的一種。

如果你是一個基於UNIX的系統上,你想看看你有g++,比方說,你可以這樣做:

which g++ 

要找出哪個版本(如果您已經得到了它),這樣做:

g++ --version 

在Visual C++隱藏控制檯窗口,當你編程Windows圖形用戶界面,它只是不顯示它的條款,如果你已經設置的子系統到Windows在你的項目設置中。


編譯時,你不包括DLL文件,您鏈接對與其有關的.lib文件,然後確保他們可以在運行時被發現。請注意編譯和鏈接之間的(重要的)區別。這似乎是一個合理的鏈接:

http://edmulroy.portbridge.com/oview.htm


假設你的編譯器的Visual C++(這是它聽起來像),你可以通過MSDN剛讀。


編輯:

在回答你的新問題,在這裏看到:

How to stop Mingw (g++) opening a console window in windows

回覆。 DLLs,你不包括它們 - 你使用-l<libname>鏈接DLL的導入庫,然後確保DLL本身或者與可執行文件在同一目錄中,或者在運行時在系統路徑中。

+2

通過MSDN閱讀?但那需要他們多年! –

+1

@MrLister:「can」!=「should」:)真正的答案是,您通過嘗試瞭解瞭解了編譯器的實際經驗 - 但這也需要很長時間。不幸的是,獲得經驗是一個緩慢的過程。 –

+0

@StuartGolodez確實如此,但是如果您不確定要查找的是什麼(例如,它確切地稱爲什麼),則MSDN太大而不方便。 –