老版本:
#include <QApplication>
#include <QString>
忘了哪本书上推荐这样包含:
#include <QtGui/QApplication>
#include <QtCore/QString>
而今天在测试Qt5代码时发现:QApplication已经从原来的<QtGui/QApplication>移动到<QtWidgets/QApplication>了。
而QtGui中多了一个:<QtWidgets/QGuiApplication>
如果你的代码即要用Qt4编译,又要用Qt5编译,怎么办?
难道只能添加#if.../#else.../#endif?
所以,个人觉得最佳的包含风格仍然是老版的:
#include <QApplication>
#include <QString>
#include <QTextDocument>
#include <QTextCursor>
这将同时兼容Qt4与Qt5!
因为只要在Qt工程文件中添加了类似这样的语句:
QT += core gui widgets
则相应头文件的路径会自动到搜索列表里,而无需担心头文件找不到的问题。
并且,Qt的类中,是不可能存在重名的。
这不但提高了通用性,还简化了我们的记忆:我们并不需要知道某个类是属于哪个模块的。
只管交给qmake来处理就可以了。
个人观点,不妥处请指正。