Hallo,
Ich würde wegen der direkten Beziehung beides durchgehen lassen und daher auch die Aussage "eine Variable ist auch ein Objekt" hinnehmen.
wenn Du diesen Gedanken weiterführst kommst Du aber spätestens bei dynamisch erzeugten Objekten in Erklärungsnöte.
überhaupt nicht. Denn wenn ich sage "Eine Variable ist ein Objekt", dann folgt daraus ja nicht zwangsläufig, dass jedes Objekt auch eine Variable ist. Nicht jede Aussage ist umkehrbar eindeutig!
das in dieser Zeile
new QLabel();
erzeugte Objekt würdest Du sicher nicht als Variable bezeichnen.
Nein. Da wird ein Objekt erzeugt (sowohl im Sinn der Speicherverwaltung, als auch im Sinn der OOP). Aber dieses Objekt ist mit keinem Namen, keinem Bezeichner verknüpft und daher keine Variable. Es ist ja nach seiner Erzeugung nicht einmal mehr ansprechbar!
QLabel label;
und
QLabel *label;
sind Variablen.
Ja, eindeutig.
Die enthaltenen Werte können geändert werden.
Ändern sich dadurch die Variablen? - Ich glaube, die Antwort darauf trennt uns.
Nein, es ändern sich nur die Variablenwerte.
Ich würde diese Frage mit NEIN beantworten.
Siehste, so unterschiedlich liegen wir doch gar nicht.
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, natürlich nicht. Es sind zwei verschiedene Variablen (verschiedener Speicherplatz, verschiedene Namen), die den gleichen Typ haben und zufällig den gleichen Wert bekommen.
Worauf du jetzt mit deinen Ausführungen eigentlich hinaus willst, bleibt mir aber auch verborgen.
So long,
Martin
Ich liebe Politiker auf Wahlplakaten.
Sie sind tragbar, geräuschlos, und leicht wieder zu entfernen.
(Loriot, deutscher Satiriker)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(