關於msvc下qt專案的警告級別:
用msvc建立乙個qt 專案.似乎是自動設定成最低級別,warnning 1 ! 記住一定要自己設定回第**別! 否則,無數c++中會導致萬劫不復的錯誤會被編譯器放過 。舉個例子:
***************====
a.h***************====
class a
;virtual ~a()
;private:
char* m_buf;
};********************
c.h********************
class a;
class c
; virtula ~c()
private:
a* m_a;
};********************
d.h********************
#include "c.h"
#include "a.h"
class d: public c
;~d();}
***************====
main.cpp
***************====
#include "d.h"
int main()
ok, 下面,不要編譯,把vc 的警告級別甚至成 /w1 。 然後,編譯順利通暢。
假象的執行結果是 經過~d()後,經過~c(), 接著m_a被銷毀。
真正結果呢。~a()根本沒有被執行過. 智者會痛罵, w3 明明告訴你 main.cpp根本沒找到~a()定義....恩恩, 說完了...
關於MSVC下QT專案的警告級別
關於msvc下qt專案的警告級別 用msvc建立乙個qt 專案.似乎是自動設定成最低級別,warnning 1 記住一定要自己設定回第 別 否則,無數c 中會導致萬劫不復的錯誤會被編譯器放過 舉個例子 a.h class a virtual a private char m buf c.h clas...
Qt專案的發布
1 首先將專案調為發布版 2 找到缺失的dll檔案 發布好了後,雙擊生成的exe檔案可能會出現如下的問題 像這樣的錯誤警告可能會彈出好幾個,對於這種錯誤有2種解決方案。1 複製qt bin目錄新增到環境變數 去qt的bin目錄下找到缺少的dll 我所寫的乙個小程式缺少了3個dll檔案,將他們複製到同...
qt專案的打包發布
1 新增qt執行時所依賴的庫檔案,可以借助一下類似於depends.exe 工具,但是最好的方法還是用官方自帶的windeployqt工具。命令 第一種 cd d d hellomw windeployqt hellomw.exe 第二種 windeployqt.exe d hellomw hell...