Hallo unknown,
das in dieser Zeile
new QLabel();
erzeugte Objekt würdest Du sicher nicht als Variable bezeichnen.
Doch, hier wird eine temp. Variable erzeugt. Diese Variable ist ein Objektpointer vom Typ QLabel*
Also setzt Du schon das Speichern eines Rückgabewertes im Prozessorregister mit dem Deklarieren einer Variablen gleich?
Wenn Du das hier betrachtest
int x = 5;
int y = 5;kämst Du doch sicher nicht auf den Gedanken zu sagen x und y sind die gleichen Variablen.
Nein, sie haben nur den gleichen Wert.Aber worauf willst du eigentlich hinaus?
"Nein, sie haben nur den gleichen Wert." -> darauf will ich hinaus.
Wenn ich die Begriffe Objekt und Variable als austauschbar behandle müsste ich sagen können das x und y die gleiche Variable sind.
Was an der Aussage
Als Ergänzung möchte ich anmerken, dass Objekte, die mit
Qlabel label;
erzeugt werden, auch als "automatische Variablen" bezeichnet werden.
passt dir denn nicht?
Hier wird ein Objekt erzeugt, also die Variable label vom Typ Qlabel ist ein Objekt.
Da diese auf dem Stack erzeugt wird, wird sie auch als automatische Variable bezeichnet.
Für mich passiert bei
Qlabel label;
das hier:
Es wird eine Variable vom Typ QLabel mit Namen label deklariert (Speicherplatz belegt, da automatische Variable).
Abhängig von der Programmiersprache wird eine Initialisierung vorgenommen, in OOP Aufruf von Standardkonstruktor.
In C-Strukturen passiert gar nichts außer der Speicherbelegung, ebenso bei Integer und so weiter. Meinst Du, dass man bei letzterem von Objekten/Werten sprechen kann?
Diese Aussage
die Variable label vom Typ Qlabel ist ein Objekt
kann ich so nicht nachvollziehen und ich wüßte auch nicht wie ich da eine Brücke bauen kann. Insofern erscheint mir eine weitere Diskussion nicht sinnvoll.
MfG