QT_BEGIN_NAMESPACE和QT_END_NAMESPACE宏来条件性地包含或排除对Qt命名空间的引用。为了跨平台兼容性和避免命名空间污染
通常用于Qt的内部代码或库代码中
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
告诉编译器,存在这样一个类,并且它被放置在Ui命名空间中。
实际定义的地方
namespace Ui {
class MainWindow: public Ui_MainWindow {};
} // namespace Ui