Am Mit, 2003-03-26 um 17.26 schrieb Holger Macht:
Am Mittwoch, 26. März 2003 16:38 schrieb Stefan Sassenberg:
Hallo Holger,
hallo ist in deinem Beispiel eine Variable *eines Objektes* der Klasse1.
(Ohne auf die Verteilung auf verschiedene Dateien zu achten) hier ein ungetesteter Vorschlag:
#include <iostream>
class Klasse1 { public: QString hallo; };
class Klasse2 { public: Klasse1 mK1; void set() { mK1.hallo = QString("hallo welt"); }
Jetzt habe ich verstanden, dass ich erst ein Object der Klasse Klasse1 erstellen muss, um dann auf Membervariabln zugreifen zu können. Ja.
Da stellet sich aber nun ein neues Problem: Ich möchte den Wert der einen Klasse übergeben. Wenn ich aber ein neues Object der Kalsse erstelle, wird auch die Variable neu erzeugt (hallo)
Ja.
und damit ihr Inhalt gelöscht. Nein, es wird ein neues, anderes Feld "hallo" erzeugt, das "Teil eines andere Objektes" ist.
Falls ich sie aber als static deklariere bekomme ich folgende Fehlermeldung:
undefined reference to `Klasse1::hallo'
http://www.fmi.uni-konstanz.de/~kuehl/c++-faq/ctors.html#faq-10.9 http://www.fmi.uni-konstanz.de/~kuehl/c++-faq/ctors.html#faq-10.10 Ralf