2016-06-19 1 views
1

Qt 5.6 예 "basicLayout", 매크로 "QT_BEGIN_NAMESPACE"가 있습니다. Qt 문서에서 검색하려고 시도하지만 여전히 대답을 얻을 수 없습니다. Qt의 의미는 무엇입니까?Qt 5의 매크로 "QT_BEGIN_NAMESPACE"는 무엇입니까?

와 관련된 코드는 여기에 있습니다 :

#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

BTW, Qt5 이전부터 존재 해왔다. – drescherjm

+1

Sam이 제안한 것과 같이 Qt 헤더 파일을 검색하는 방법을 모를지라도, 이것은 흔히 * Googleable 기호입니다. –

답변

2

이들은 특정 네임 스페이스에 Qt를 구축하려는 경우 다시 정의 할 수 있습니다 매크로입니다.

매우 특별한 상황에서 유용 할 수 있습니다. 예를 들어, "ExternalFramework :: Qt :: Version5"네임 스페이스 안에 모든 Qt의 정의를 넣고 싶을 때 유용합니다.

99.99 %의 시간은 기본값을 변경할 필요가 없습니다. 기본값은 비워 둡니다. (네임 스페이스 없음)