c++ namespace
Verfasst: 26. Juli 2011 09:38
Hallo QT/c++ Experten,
folgende Frage hätte ich zu Namespaces in QT:
im example: "Screenshot" wird folgende headerdatei definiert:
Wenn ich QLabel nicht in den Namespace mit aufnehmen würde, kennt der Compiler natuerlich das QLabel weiter unten in dem headerfile nicht.
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
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