C# 中的复制构造函数是什么?

csharpprogrammingserver side programming更新于 2025/10/13 21:52:17

复制构造函数通过从另一个对象复制变量来创建一个对象。

让我们看一个例子 −

示例

using System;
namespace Demo {
   class Student {
      private string name;
      private int rank;

      public Student(Student s) {
         name = s.name;
         rank = s.rank;
      }

      public Student(string name, int rank) {
         this.name = name;
         this.rank = rank;
      }

      public string Display {
         get {
            return " Student " + name +" got Rank "+ rank.ToString();
         }
      }
   }

   class StudentInfo {
      static void Main() {
         Student s1 = new Student("Jack", 2);

          // 复制构造函数
         Student s2 = new Student(s1);

          // 显示
         Console.WriteLine(s2.Display);
         Console.ReadLine();
      }
   }
}

如上所示,我们首先声明了一个复制构造函数 −

public Student(Student s)

然后为 Student 类创建一个新的对象 −

Student s1 = new Student("Jack", 2);

现在,s1 对象被复制到一个新的对象 s2 −

Student s2 = new Student(s1);

这就是我们所说的复制构造函数。


相关文章