Hallo Zusammen
Neulich habe ich eine Klasse geschrieben, um mit grossen Zahlen (um die 100 Stellen)<br> rechnen zu können. Den Wert speichere ich in einem char-Array ab.
Nun hab ich den operator+ überladen und gebe ein Objekt der selben Klasse <br>zurück. Dummerweise wird der Destruktor dieses Objektes vor der <br>nachfolgenden Zuweisung aufgerufen und der Speicher wird zu früh frei <br>gegeben, d.h. ich kann die Zahlen zwar korrekt zusammenzählen, jedoch nicht<br> einem neuen Objekt zuweise:-(! Gelöst habe ich das Problem, indem ich kein Objekt der Klasse, sonder bloss deren benötigter Wert <br>zurück gebe. Gib es wirklich keinen andern Weg?
Währe schön, wenn mir das jemand erklären könnte!
Tschüss - Boris
Ps. Was ist eigentlich der Unterschied zwischen &operator= und operator=? <br>Es hat beides den gewünschten Wert geliefert...
Neulich habe ich eine Klasse geschrieben, um mit grossen Zahlen (um die 100 Stellen)<br> rechnen zu können. Den Wert speichere ich in einem char-Array ab.
Nun hab ich den operator+ überladen und gebe ein Objekt der selben Klasse <br>zurück. Dummerweise wird der Destruktor dieses Objektes vor der <br>nachfolgenden Zuweisung aufgerufen und der Speicher wird zu früh frei <br>gegeben, d.h. ich kann die Zahlen zwar korrekt zusammenzählen, jedoch nicht<br> einem neuen Objekt zuweise:-(! Gelöst habe ich das Problem, indem ich kein Objekt der Klasse, sonder bloss deren benötigter Wert <br>zurück gebe. Gib es wirklich keinen andern Weg?
Währe schön, wenn mir das jemand erklären könnte!
Tschüss - Boris
Ps. Was ist eigentlich der Unterschied zwischen &operator= und operator=? <br>Es hat beides den gewünschten Wert geliefert...