folgende Frage hätte ich zu Namespaces in QT:
im example: "Screenshot" wird folgende headerdatei definiert:
Code: Alles auswählen
#ifndef SCREENSHOT_H
#define SCREENSHOT_H
#include <QPixmap>
#include <QWidget>
QT_BEGIN_NAMESPACE
class QCheckBox;
class QGridLayout;
class QGroupBox;
class QHBoxLayout;
class QLabel;
class QPushButton;
class QSpinBox;
class QVBoxLayout;
QT_END_NAMESPACE
//! [0]
class Screenshot : public QWidget
{
Q_OBJECT
.....
QPixmap originalPixmap;
QLabel *screenshotLabel;
.....
Meine Frage ist, wieso wird hier im Headerfile der namsepace definiert und im cpp file das komplette inc lude <QtGui> eingebunden (dies enthält doch alle QtGui spezifischen Klassen...)?
Der Sinn von Namespaces ist mir eigentlich klar, es ist wie bei der STL nicht eine grpsse headerdatei definiert sondern mehrere Header/klassefiles im selben namespace, daher muss ich nur das einbinden was ich brauche. Jedoch ist mir nicht klar, wieso im headerfile hier nicht <Qlabel> includiert wird, sondern über den namespace gegangen wird ?
Falls ich was falsch verstanden habe, bitte ich um Korrektur
Herzlichen Dank für eure Hilfe
Gruesse