關於MSVC下QT專案的警告級別

2021-04-15 16:20:32 字數 821 閱讀 6699

關於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...