【问题标题】:what is the Macro "QT_BEGIN_NAMESPACE" mean in Qt 5? [duplicate]Qt 5 中的宏“QT_BEGIN_NAMESPACE”是什么意思? [复制]
【发布时间】:2016-06-19 13:01:04
【问题描述】:

在Qt 5.6 Example“basicLayout”中,有一个宏“QT_BEGIN_NAMESPACE”,我尝试在Qt Documentation中搜索,但还是找不到答案。那么Qt中的含义是什么?

相关代码在这里:

#ifndef DIALOG_H
#define DIALOG_H

#include <QDialog>

QT_BEGIN_NAMESPACE
class QAction;
class QDialogButtonBox;
class QGroupBox;
class QLabel;
class QLineEdit;
class QMenu;
class QMenuBar;
class QPushButton;
class QTextEdit;
QT_END_NAMESPACE

//! [0]
class Dialog : public QDialog
{
    Q_OBJECT

public:
    Dialog();

private:
    void createMenu();
    void createHorizontalGroupBox();
    void createGridGroupBox();
    void createFormGroupBox();

    enum { NumGridRows = 3, NumButtons = 4 };

    QMenuBar *menuBar;
    QGroupBox *horizontalGroupBox;
    QGroupBox *gridGroupBox;
    QGroupBox *formGroupBox;
    QTextEdit *smallEditor;
    QTextEdit *bigEditor;
    QLabel *labels[NumGridRows];
    QLineEdit *lineEdits[NumGridRows];
    QPushButton *buttons[NumButtons];
    QDialogButtonBox *buttonBox;

    QMenu *fileMenu;
    QAction *exitAction;
};
//! [0]

#endif // DIALOG_H

【问题讨论】:

标签: c++ qt macros


【解决方案1】:

如果您想在特定命名空间中构建 Qt,您可以重新定义这些宏。

这在非常特殊的情况下很有用,例如,如果您希望将所有 Qt 的定义放在“ExternalFramework::Qt::Version5”命名空间中。

99.99% 的情况下,您不需要更改默认值,即空白。 (没有命名空间)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-27
    • 2015-07-15
    • 2018-07-17
    相关资源
    最近更新 更多