Qt里头文件包含的类的声明

1、QT_BEGIN_NAMESPACE

例如:

  #ifndef MAINWINDOW_H
#define MAINWINDOW_H
 
 
#include <QMainWindow>
 
 
QT_BEGIN_NAMESPACE
class QAction;
class QMenu;
class QTextEdit;
QT_END_NAMESPACE

在头文件中只用到一些类的指针(而非实现),那么就可以不包含这些类的头文件,而只使用上面形式的类型前置声明,而在具体实现时才包含入上面这些类型的头文件。如此,头文件里所包含的头文件减少了,那么使用到这个头文件的程序就能包含更少的内容,而不是每次都包含很多头文件,解析起来都耗时。

2、namespace

在Qt头文件中很多时候都有这句:

namespace Ui {

class MainWindow;
}


猜你喜欢

转载自blog.csdn.net/fanx021/article/details/80351162