2010-07-27 1 views

risposta

15

QT_BEGIN_NAMESPACE e QT_END_NAMESPACE sono macro del preprocessore e sono definiti nella QtGlobal come:

#define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE { 
#define QT_END_NAMESPACE } 

Ma: quei due macro hanno effetto solo quando Qt è stato configurato e costruito utilizzando l'opzione -qtnamespace, che consente per costruire Qt all'interno di uno spazio dei nomi definito dall'utente.

Quindi: se non si utilizza (o pensa di utilizzare) una libreria Qt che è stato costruito in questo modo (per impostazione predefinita, la libreria Qt risiede nel namespace globale), omettendo il QT_BEGIN_NAMESPACE e QT_END_NAMESPACE non porterà alla alcun problema.