Ein Konstruktor, der ein Objekt erstellt, indem er Variablen von einem anderen Objekt kopiert oder Daten von einem Objekt in ein anderes kopiert, wird als Kopierkonstruktor bezeichnet. Werfen wir unten einen kurzen Blick darauf und hoffen, dass es für alle hilfreich ist.
Der Kopierkonstruktor ist ein parametrisierter Konstruktor, der Parameter desselben Klassentyps enthält. Sein Hauptzweck besteht darin, eine neue Instanz mit dem Wert einer vorhandenen Instanz zu initialisieren. Im Allgemeinen stellt C# keinen Kopierkonstruktor für Objekte bereit. Wenn Sie jedoch einen Kopierkonstruktor in Ihrem Programm erstellen möchten, können Sie ihn nach Bedarf erstellen. [Tutorial-Empfehlung: C#-Video-Tutorial]
Grundlegende Syntax
Das Folgende ist ein Kopierkonstruktor, der mit c# definiert ist Programmiersprache Funktionssyntax.
class Class_Name { // 参数化构造函数 public Class_Name(string a, string b......)//参数列表 { // code } // 复制构造函数 public Class_Name(Class_Name instance_of_class) { // code } }
Beispiel:
using System; namespace Tutlane{ class User { public string name, location; // 参数化构造函数 public User(string a, string b){ name = a; location = b; } // 复制构造函数 public User(User user) { name = user.name; location = user.location; } } class Program{ static void Main(string[] args){ // 带有参数化构造函数的User对象 User user = new User("小明", "北京"); // 另一个User对象(user1)通过复制user的详细信息, User user1 = new User(user); user1.name = "小华"; user1.location = "上海"; Console.WriteLine(user.name + ", " + user.location); Console.WriteLine(user1.name + ", " + user1.location); } } }
Ausgabe:
Anleitung:
Im obigen Beispiel erstellen wir eine Instanz des Kopierkonstruktors (Benutzer1) und verwenden eine Instanz des Benutzerobjekts als Parametertyp. Daher werden die Eigenschaften des Benutzerobjekts an das Benutzer1-Objekt gesendet. Wenn wir die Eigenschaftswerte des Benutzer1-Objekts ändern, haben diese Eigenschaftswerte keinen Einfluss auf die Eigenschaftswerte des Benutzerobjekts.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere spannende Inhalte finden Sie in den entsprechenden Tutorial-Kolumnen auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonWas ist der Kopierkonstruktor in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!