Qt pro中使用DEFINES來實現條件編譯


1、pro中使用DEFINES來實現條件編譯

在Qt的pro文件中使用DEFINES 來實現類似gcc -D的條件編譯功能。
如,在pro中:

 1 #定義條件編譯宏LAOER  2 DEFINES += LAOER  3 #依賴編譯宏LAOER的編譯選項:  4 contains(DEFINES, LAOER){  5  message(hello Laoer)  6 }  7 #與編譯宏LAOER沖突的編譯選項:  8 !contains(DEFINES, LAOER){  9  message(hello Laoda) 10 }

2、 在生成的makefile中,可以看到編譯宏

1 DEFINES  = ... -DLAOER ... 2 CXXFLAGS = ... $(DEFINES) ... 3 ... 4 $(CXX) -c $(CXXFLAGS) ...
3、在源碼中使用編譯宏

可以使用ifndef、ifdef條件編譯

1 #ifndef LAOER 2 ... 3 #endif
4 
5 #ifdef LAOER 6 ... 7 #endif

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM