- debug調試模式,編譯后的可執行文件很大,帶了很多調試符號信息等,方便開發階段調試的時候進入具體的堆棧查看值。會打開所有的斷言,運行階段性能差速度慢,可能會有卡頓感覺。
- release發布模式,編譯后的可執行文件很小,不帶任何調試符號信息,一般用於打包發布程序。由於經過了各種優化,會關閉所有斷言,運行階段性能最好,如果有卡頓那肯定是你的程序問題。
- profile概述模式,編譯后的可執行文件比debug小很多比release大一點,帶有部分調試符號信息,在debug和release之間取一個平衡,兼顧性能和調試,性能更優但是又方便調試。
- 使用Qt5.7版本對應三種模式編譯的空白窗體程序大小:debug(1319kb)、release(24kb)、profile(90kb)。
- debug鏈接的庫是帶d結尾的,release和profile鏈接的庫是不帶d結尾的,很多人以為profile鏈接的是帶d結尾的其實是錯誤的。
- 新的Qt在線安裝程序在安裝的時候,可以勾選是否安裝debug調試庫(對應lib目錄下一堆帶d結尾的文件),以前的版本是默認都安裝,現在可選安裝以便減少體積。
- 無論是否安裝了debug調試庫,你都可以選擇debug模式生成對應debug的文件,這個不知道怎么做到的。
- 無論是哪種模式,都可以在程序中開啟日志鈎子輸出日志信息,方便收集運行階段的各種信息反饋給開發人員查看問題。
- 最初的開發工具一般是具有debug和release兩種模式,隨着用戶需求的增加和場景的需要,部分開發工具衍生出了profile模式,更有甚者比如flutter還有第四種test模式。
