QT_BEGIN_NAMESPACE有什么影响?
QT_BEGIN_NAMESPACE
class QLineEdit;
QT_END_NAMESPACE
如果我不使用那样的类声明,会出现任何问题吗?
QT_BEGIN_NAMESPACE有什么影响?
QT_BEGIN_NAMESPACE
class QLineEdit;
QT_END_NAMESPACE
如果我不使用那样的类声明,会出现任何问题吗?
QT_BEGIN_NAMESPACE
和 QT_END_NAMESPACE
是预处理器宏,它们在中定义 QtGlobal 如:
#define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE {
#define QT_END_NAMESPACE }
但是:当使用Qt配置和构建Qt时,这两个宏只会产生任何影响 -qtnamespace
选项,它允许您在用户定义的命名空间内构建Qt。
所以:如果你不使用(或计划使用)以这种方式构建的Qt库(默认情况下,Qt库驻留在全局命名空间中),省略 QT_BEGIN_NAMESPACE
和 QT_END_NAMESPACE
不会导致任何问题。