2012-12-25 104 views
0

我使用BlueGo爲msvc2012構建了一個自定義Qt5。MSVC2012 Qt應該包含一個目錄?

我讀的例子,它顯示了:

#include <QtGui> 

int main(int argc, char *argv[]) 
{ 
    QApplication app(argc, argv); 
    QWidget window; 
    window.resize(320, 240); 
    window.show(); 
    window.setWindowTitle(
     QApplication::translate("toplevel", "Top-level widget")); 
    return app.exec(); 
} 

問題是,QtGui對我來說其實是一個目錄,而不是一個文件,所以它不能被包括在內。我正在使用/ qtbase/include /下的包含文件。難道我做錯了什麼?

回答

1

QtGui頭實際存在,只是包含QtGui模塊的所有頭文件。你可以在裏面找到的QtGui目錄。編譯器能夠找到它,因爲在include路徑中指定了QtGui目錄。換句話說,它是一樣的:

#include <QtGui/QtGui> 

這是一個可怕的做法,包括QtGui頭雖然。您應該只包含您實際使用的內容,否則編譯時間將會增加,原因不明。但是,對於快速測試等,它非常方便。

+0

嗯...即使文件看起來不像它那裏,我添加了該行和intellisense開始掃描400'ish文件。看起來像有用的東西。雖然我編譯並得到了很多這樣的代碼:'1> c:\ users \ ... \ documents \ visual studio 2012 \ projects \ qttest \ qttest \ main.cpp(5):error C2079:'app'uses undefined 「QApplication」類看起來不像預期的那樣工作。 – kvanberendonck

+0

更新,我很傻。 QtGui沒有擴展名,所以不會在Visual Studio中顯示。我把它包括進來,所有的類都被突出顯示,並以intellisense出現,但是他們的方法似乎沒有被定義,拋出類似上面的錯誤。 – kvanberendonck

相關問題