1. 程式人生 > >Qt學習筆記3:Qt工程的目錄結構

Qt學習筆記3:Qt工程的目錄結構

經過前兩篇的學習,已經可以使用Qt空專案模板建立自己的工程了。通過本篇的學習,整理一下如果使用Qt工程的目錄結構,使專案更規範和容易管理。

當前的目錄結構

如圖所示,這是前篇中建立的工程,只有main.cpp和widget.cpp、widget.h三個檔案,直接放在了一個目錄下,沒有子目錄:

1

在向工程中新增新檔案時,預設情況下,都是自動建立到當前目錄下。工程檔案比較少時不會影響使用,但是當檔案多起來,工程就變的難以管理,這個時候,再去整理檔案就變得麻煩。所以,好的工程,應該在最開始構建專案時,就將工程的目錄結構建立好。下面,我們來介紹一下怎樣建立Qt工程的目錄結構。

使用Qt工程的目錄結構

當我們的工程下需要分目錄管理檔案時,可以通過以下兩種方式實現:

  • 使用子目錄路徑
  • 使用pri檔案

接下來我們對這兩種方式分別介紹,可自行選擇。

使用子目錄路徑

在向工程新增或新建立檔案時,建立子檔案,並將檔案建立在子目錄下。

2

將建立的類放在子目錄下,完成後,效果如圖所示:

3

在pro檔案中自動加入了src/widget.h和src/widget.c兩個檔案,都是使用相對路徑的方式。
以這種方式的子目錄,在使用時,標頭檔案的引用也要加上相對路徑,否則會出現找不到檔案的錯誤。或者再pro檔案中新增環境變數:

INCLUDEPATH +
= src

可以正常使用。Qt工程會自動將新增的檔案分類放在標頭檔案和原始檔兩個目錄下。在實際目錄下是沒有這兩個資料夾的,但是看著特別彆扭。

使用pri檔案

第二種方式,使用pri檔案。關於pro、pri、prf、prl檔案在Qt的用途和使用方法,可以自行學習。
pri檔案的作用,這裡是將pro檔案的一部分放入每個路徑下的pri檔案,分別管理,最後在將pri檔案包含到pro中即可。使用方法:

(1)手動建立pri檔案
手動建立子目錄,並建立空檔案或文字檔案,將檔案字尾改為pri。
注意,pri檔案的檔名就是Qt工程顯示的子目錄名,而不是實際手動建立的子目錄,這裡建議將pri的檔名和子目錄名保持一致。

(2)包含pri檔案
在pro檔案中包含pri檔案,使用include命令

include(src/src.pri)

儲存後,Qt工程會自動將pri檔案新增到工程中,並顯示子目錄

4

(3)新增新檔案
右鍵選擇子目錄,點選新增新檔案或者建立檔案,完成後如圖所示:

5

Qt工程會自動向子目錄下的pri工程檔案新增檔案,並將檔案資訊自動寫入pri檔案。

6

使用這種方法,不需要增加INCLUDEPATH環境變數,不會出現找不到標頭檔案的問題。

如何去除Qt檔案自動分類Sources和Headers

當前我使用的Qt版本是5.6,查了一下資料,發現最新版本在建立或者新增檔案時,都會自動對檔案進行分類,顯示Sources和Headers目錄下。
嘗試了幾種辦法,都無法去除自動分類。在CSDN論壇發帖問了一下,據說是改不了。倒是不影響使用,不知道後續的版本這個地方會不會有變化。