QT .pro文件的實現(xiàn)
.pro 文件是什么
.pro就是工程文件(project),它是qmake自動生成的用于生產(chǎn)makefile的配置文件。類似于VS中的.sln 和vsproj文件
默認情況下,每個 Qt 項目都包含一個后綴名為.pro
、名稱和項目名相同的文件。如該項目的項目名為Dashboard,其中Dashboard.pro 就是項目管理文件。
一個項目中可能包含上百個源文件,Qt 編譯這些源文件的方法是:先由 qmake 工具根據(jù) pro 文件記錄的配置信息生成相應(yīng)的 makefile 文件,然后執(zhí)行 make 命令完成對整個項目的編譯。也就是說,pro 文件存儲的配置信息是用來告知編譯器如何編譯當前項目的,所以一個 Qt 項目要想完美運行,既要保證各個源文件中程序的正確性,還要保證 pro 文件中配置信息的合理性。
任何一個 Qt 項目都至少包含一個 pro 文件,此文件負責存儲與當前項目有關(guān)的配置信息,比如:
- 項目中用到了哪些模塊?
- 項目中包含哪些源文件,哪些頭文件,它們的存儲路徑是什么?
- 項目使用哪個圖片作為應(yīng)用程序的圖標?
- 項目最終生成的可執(zhí)行文件的名稱是什么?
對于一個剛剛創(chuàng)建好的 Qt 項目,pro 文件并不是空的,而是包含一些基本的配置信息。實際開發(fā)中,Qt 會自動修改 pro 文件的內(nèi)容,但有時也需要我們手動修改,例如程序中用到某個第三方庫時,就需要我們手動修改 pro 文件。
.pro文件的配置信息
.pro 文件可以存儲上百條配置信息,每條配置信息由三部分構(gòu)成:
- 前半部分是關(guān)鍵字,也稱配置項,用來指明配置信息的含義;
- 中間用 +=、-=、= 等數(shù)學(xué)符號連接配置項和它對應(yīng)的值;
- 后半部分是配置項對應(yīng)的值,一個配置項可以對應(yīng)多個值,每個值代表不同的含義。
注釋 :使用‘#’進行注釋,范圍到每行結(jié)束
模塊引入: QT += 模塊名,表示當前項目引入Qt哪些模塊。默認值為 core 和 gui
所謂模塊,可以簡單地理解為文件夾或者壓縮包,內(nèi)部包含多個功能相近的類。作為一款成熟的 GUI 框架,Qt 提供了大量的類,根據(jù)這些類的功能,Qt 將它們分成了幾個組,每個組稱為一個模塊。打開 Qt Creator 的幫助界面并搜索“All modules”,可以看到 Qt 的所有模塊。
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets : 如果QT_MAJOR_VERSION大于4(也就是當前使用的Qt5及更高版本)需要增加widgets模塊。如果項目僅需支持Qt5,也可以直接添加“QT += widgets”一句。
配置信息:CONFIG用來告訴qmake關(guān)于應(yīng)用程序的配置信息 。如 CONFIG += c++11:啟動 C++11 標準支持。(qt5.6以上版本默認使用C++11)
TARGET:指定生成的應(yīng)用程序名,中間用 = 符號連接。
HEADERS:指定項目中包含的所有 .h 頭文件
FORMS:指定項目中包含的 .ui 設(shè)計文件
SOURCES:指定項目中包含的所有 .cpp 源文件
RESOURCES指定項目中包含的資源文件
pro文件大部分配置項不需要我們手動修改,比如 SOURCES、HEADERS、FORMS 等,當我們添加或者刪除項目中的源文件時,Qt 會自動修改這些配置項。
附:Qtcreator常用快捷鍵
運行 ctrl +R
編譯 ctrl +B
幫助文檔 F1 ,點擊F1兩次跳到幫助界面跳到符號定義 F2 或者 Ctrl + 鼠標點擊
注釋 ctrl+/
字體縮放 ctrl + 鼠標滾輪
整行移動代碼 ctrl + shift + ↑或↓自動對齊 ctrl + i
同名之間的.h和.cpp文件跳轉(zhuǎn) F4聲明函數(shù)實現(xiàn):alt鍵
到此這篇關(guān)于QT .pro文件的實現(xiàn)的文章就介紹到這了,更多相關(guān)QT .pro文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C++ 數(shù)據(jù)結(jié)構(gòu)線性表-數(shù)組實現(xiàn)
這篇文章主要介紹了C++ 數(shù)據(jù)結(jié)構(gòu)線性表-數(shù)組實現(xiàn)的相關(guān)資料,需要的朋友可以參考下2017-06-06C語言數(shù)據(jù)結(jié)構(gòu)與算法之鏈表(二)
在這篇文章中,我們將拋開令人頭禿的指針和結(jié)構(gòu)體,我們將另外使用一種數(shù)組來實現(xiàn)的方式,叫做模擬鏈表。讓來跟隨小編一起學(xué)習(xí)學(xué)習(xí)吧2021-12-12