从Qt5的改变望最佳头文件包含风格

从Qt5的改变看最佳头文件包含风格?
老版本:
#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来处理就可以了。

个人观点,不妥处请指正。

------解决方案--------------------
看来QT5是要大变了
------解决方案--------------------
多谢老邓的探索,要不以后越写越有更多的代码无法移植了。
------解决方案--------------------
请问下 我现在装了的qt是集成在vs2008 中的,但是我在网上下载的一些源码的工程文件是pro格式的,所以我就又下载了一个qtcreator,仅仅是个编辑器,请问怎么设置啊?
------解决方案--------------------
widgets不再是GUI的一部分了,我越来越不懂Qt的套路了
------解决方案--------------------
老邓的技术贴都要顶
------解决方案--------------------
感觉一头雾水。。。
------解决方案--------------------
Qt的功能将更强大,更全面,不只限于GUI方面。所以重构在所难免。
------解决方案--------------------
唉,你们都用上Qt5了。我还在折腾Qt3.3的东西。痛苦啊