Flache Kopie

Autor: Lewis Jackson
Erstelldatum: 8 Kann 2021
Aktualisierungsdatum: 25 Juni 2024
Anonim
037 - Kopierkonstruktur: Flache und tiefe Kopie - C++ Tutorial Deutsch
Video: 037 - Kopierkonstruktur: Flache und tiefe Kopie - C++ Tutorial Deutsch

Inhalt

Definition - Was bedeutet Flachkopie?

Flache Kopie in C # ist das Erstellen eines Klons eines Objekts, indem eine neue Instanz des gleichen Typs wie das ursprüngliche Objekt instanziiert und die nicht statischen Elemente des vorhandenen Objekts in den Klon kopiert werden. Die Elemente des Wertetyps werden bitweise kopiert, während die Elemente des Referenztyps so kopiert werden, dass sich das referenzierte Objekt und sein Klon auf dasselbe Objekt beziehen.


Im Allgemeinen wird eine flache Kopie verwendet, wenn die Leistung eine der Anforderungen ist, zusammen mit der Bedingung, dass das Objekt in der gesamten Anwendung nicht mutiert wird. Durch die Weitergabe des Klons, der unveränderliche Daten enthält, wird die Möglichkeit der Beschädigung durch einen Code ausgeschlossen. Eine flache Kopie hat sich als effizient erwiesen, wenn Objektreferenzen die Weitergabe von Objekten nach Speicheradresse ermöglichen, sodass nicht das gesamte Objekt kopiert werden muss.

Flache Kopie wird auch als memberwise Kopie bezeichnet.

Eine Einführung in Microsoft Azure und die Microsoft Cloud | In diesem Handbuch erfahren Sie, worum es beim Cloud-Computing geht und wie Microsoft Azure Sie bei der Migration und Ausführung Ihres Unternehmens aus der Cloud unterstützen kann.

Techopedia erklärt Shallow Copy

Shallow Copy ähnelt Deep Copy in der Zuweisung jedes Elements eines Objekts zu dem eines anderen Objekts, unterscheidet sich jedoch in der Art und Weise, in der das Feld des Referenztyps kopiert wird. Anders als bei einer flachen Kopie, bei der die Referenz nur kopiert wird, wird bei einer tiefen Kopie eine neue Kopie des referenzierten Objekts erstellt.


Angenommen, ein Mitarbeiterobjekt enthält Details zu persönlichen Informationen, einschließlich einer Liste von Adressobjekten, in denen mehrere Mitarbeiteradressen gespeichert sind. Durch Ausführen einer flachen Kopie eines Mitarbeiterobjekts kann ein Klon des Mitarbeiterobjekts mit Verweisen auf dieselbe Liste von Adressobjekten erstellt werden, deren Eigentümer das ursprüngliche Mitarbeiterobjekt ist.

Die Methoden zum Durchführen eines flachen Kopiervorgangs umfassen:
  • Rufen Sie die MemberwiseClone-Methode des Objekts auf
  • Erstellen Sie einen Klon manuell mit einer benutzerdefinierten Methode, die mühsam, aber einfach zu steuern ist
  • Verwenden Sie eine Reflexionstechnik, die eine automatisierte Funktion zum Durchführen flacher Kopien bietet, jedoch mit Leistungsmehraufwand
  • Verwenden Sie eine Serialisierungsmethode, die langsamer als die Reflektion ist, jedoch automatisiert und einfach
Flache Kopie kann nicht verwendet werden, wenn das Objekt Elemente des Referenztyps enthält, die häufig geändert werden. Diese Definition wurde in der con von C # geschrieben