2016-06-19 2 views
1

В Qt 5.6 Пример «basicLayout», есть макрос «QT_BEGIN_NAMESPACE», я пытаюсь его искать в Qt Documentation, но я все еще не могу получить ответ. Так что это значит в Qt?Что такое макрос «QT_BEGIN_NAMESPACE» означает в Qt 5?

Кодекс родственный здесь:

#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 
+3

Вам повезло: вы можете легко найти файлы заголовков qt для определения этого макроса и ответить на свой собственный вопрос. –

+1

Кстати, это существовало задолго до Qt5. – drescherjm

+1

Даже если вы не знали, как искать файлы заголовков Qt, например, предположил Сэм, это * тривиально * значок Googleable. –

ответ

2

Это макрос можно переопределить, если вы хотите построить Qt в определенном пространстве имен.

Это может быть полезно в очень сложных ситуациях, например, если вы хотите, чтобы все определения Qt находились в пространстве имен «ExternalFramework :: Qt :: Version5».

99.99% времени, вам не нужно менять значение по умолчанию, которое пусто. (без пространства имен)

Смежные вопросы