QT_BEGIN_NAMESPACE 和 QT_BEGIN_NAMESPACE
来源:互联网 发布:如何在手机淘宝付钱 编辑:程序博客网 时间:2024/04/25 21:55
比较好的解释:
QT_BEGIN_NAMESPACE其实就是个宏,以前Qt4是没有Qt命名空间的,后来才加上的,编译Qt源码时会有选项,是否将这些类放到专用的Qt命名空间内,默认是没有的。这就出来问题了,为了统一,如果你的代码在默认没有Qt命名空间的SDK中编译,那你就不用在前置声明下面这些类的时候加上命名空间,但如果你在有Qt命名空间的SDK中编译,那就得加上命名空间了,为了屏蔽这个差异,使得你的源码能在这两种情况下都进行编译,Qt提供了QT_BEGIN_NAMESPACE宏,这样开发者就省得自己来用程序或宏进行处理了。
class QDialogButtonBox;
class QPushButton;
class QSqlTableModel;
至于说加快编译速度什么的,那是上述三个类的前置声明的作用,这是与Qt无关的(也即与QT_BEGIN_NAMESPACE宏无关)。如果你在头文件中只用到一些类的指针(而非实现),那么就可以不包含这些类的头文件,而只使用上面形式的类型前置声明,而在具体实现时才包含入上面这些类型的头文件。如此,头文件里所包含的头文件减少了,那么使用到这个头文件的程序就能包含更少的内容,而不是每次都包含很多头文件,解析起来都耗时。
--来自qtcn
- QT_BEGIN_NAMESPACE 和 QT_BEGIN_NAMESPACE
- qt_begin_namespace
- QT_BEGIN_NAMESPACE
- Qt中QT_BEGIN_NAMESPACE和QT_END_NAMESPACE
- Qt中QT_BEGIN_NAMESPACE和QT_END_NAMESPACE的作用
- Qt中QT_BEGIN_NAMESPACE和QT_END_NAMESPACE的作用
- 《转》QT_BEGIN_NAMESPACE、QT_END_NAMESPACE 等问题
- Qt头文件中的QT_BEGIN_NAMESPACE
- Qt头文件中的QT_BEGIN_NAMESPACE
- Qt头文件中的QT_BEGIN_NAMESPACE
- Qt头文件中的QT_BEGIN_NAMESPACE
- 关于QT_BEGIN_NAMESPACE宏的作用
- QT中 QT_BEGIN_NAMESPACE、QT_END_NAMESPACE的应用介绍!!
- [QT] Qt头文件中的QT_BEGIN_NAMESPACE(QT头文件中 class 类名做什么用)
- [QT] Qt头文件中的QT_BEGIN_NAMESPACE(QT头文件中 class 类名做什么用)
- . 和 ->
- || 和&&
- .和::
- 花1K内存实现高效I/O的RandomAccessFile类
- Linux中select函数学习及实例笔记
- TCP协议连接建立时3次握手的过程4次结束连接
- 搜索引擎通过什么方法识别网站本地特性
- 弹出div后面窗口变灰
- QT_BEGIN_NAMESPACE 和 QT_BEGIN_NAMESPACE
- OCP-1Z0-053-V12.02-157题
- 合山连州1383751855705
- 通州六安1383751868314
- 慈溪赤峰1383751874752
- 武威乳山1383751875189
- oracle学习第二天(函数,CURD)
- 萍乡威海1383751881439
- 唐山潮州1383751903893