CopyKonstruktoren
CopyKonstruktoren sind spezielle Konstruktoren, die ein neues Objekt als Kopie eines bestehenden Objekts erzeugen. In C++ spielen sie eine zentrale Rolle bei der Objektkopie; in anderen Sprachen existieren ähnliche Muster, wie manuelle Kopierkonstruktoren oder Clone-Methoden. Ein Copy-Konstruktor hat in der Regel die Signatur ClassName(const ClassName& other) und wird aufgerufen, wenn ein Objekt durch Initialisierung aus einem anderen Objekt entsteht, wenn ein Objekt per Wert übergeben wird oder wenn ein Objekt per Wert aus einer Funktion zurückgegeben wird.
Der vom Compiler erzeugte Standard-Copy-Konstruktor kopiert alle nicht-statischen Datenmitglieder des Quellobjekts. Diese memberwise Kopie ist in
Um solche Probleme zu vermeiden, implementiert man oft einen eigenen Copy-Konstruktor, der eine tiefe Kopie durchführt
Mit der sogenannten Regel von Drei (und später der Fünf) wird empfohlen, mindestens den Destruktor, Copy-Konstruktor
In Java existiert kein standardmäßiger Copy-Konstruktor; Kopieren erfolgt häufig über Clone oder manuelle Kopierkonstruktoren. In C#
---