針對於QT5下找不到QApplication頭文件的問題界解決

感謝前輩的總結,這裏用了CTRL+C CTRL+V進行操作

原地址 http://bbs.csdn.net/topics/380130389

老版本:

C/C++ code
?
1
2
#include <QApplication>
#include <QString>


忘了哪本書上推薦這樣包含:
C/C++ code
1
2
#include <QtGui/QApplication>
#include <QtCore/QString>

而今天在測試Qt5代碼時發現:QApplication已經從原來的<QtGui/QApplication>移動到<QtWidgets/QApplication>了。
而QtGui中多了一個:<QtWidgets/QGuiApplication>

如果你的代碼即要用Qt4編譯,又要用Qt5編譯,怎麼辦?
難道只能添加#if.../#else.../#endif?

所以,個人覺得最佳的包含風格仍然是老版的:
C/C++ code
1
2
3
4
#include <QApplication>
#include <QString>
#include <QTextDocument>
#include <QTextCursor>


這將同時兼容Qt4與Qt5!
因爲只要在Qt工程文件中添加了類似這樣的語句:
C/C++ code
1
QT += core gui widgets

則相應頭文件的路徑會自動到搜索列表裏,而無需擔心頭文件找不到的問題。
並且,Qt的類中,是不可能存在重名的。
這不但提高了通用性,還簡化了我們的記憶:我們並不需要知道某個類是屬於哪個模塊的。
只管交給qmake來處理就可以了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章