通过从另一个对象复制变量或将一个对象的数据复制到另一个对象来创建对象的构造函数称为复制构造函数。下面我们来简单了解一下,希望对大家有所帮助。

复制构造函数是一个参数化构造函数,包含相同类类型的参数。它的主要用途是将新实例初始化为现有实例的值。通常,C#不提供对象的复制构造函数,但是如果要在程序中创建复制构造函数,可以根据需要进行创建。【教程推荐:C#视频教程】

基本语法

以下是使用c#编程语言定义复制构造函数的语法。

class Class_Name {        // 参数化构造函数        public Class_Name(string a, string b......)//参数列表        {            // code        }        // 复制构造函数        public Class_Name(Class_Name instance_of_class)        {            // code        }}

示例:

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);        }    }}

输出:

2.jpg

说明:

在上面的例子中,我们创建了一个复制构造函数(user1)的实例,并使用user对象的实例作为参数类型。因此,user对象的属性将发送到user1对象。当我们更改user1对象的属性值时,这些属性值不会影响User对象属性值。

更多相关文章

  1. c语言函数调用的三种方式是什么
  2. C中的time()函数怎么用?
  3. C ++中Accessor函数的特征
  4. C中如何声明指向函数的指针?
  5. C/C++函数如何返回多个值?(代码示例)
  6. 在C++中对象如何作为参数传递和返回?(代码示例)
  7. C++ vector容器函数使用范例
  8. C#学习之面向对象如何调用类以及普通方法、静态方法的使用
  9. 什么是虚函数

随机推荐

  1. Android 自动化测试(5)
  2. Android判断网络状态是否断开+Android完
  3. Android中的RxJava
  4. android selector android:state_enabled
  5. Android监听器
  6. Android(安卓)ANR异常及解决方法
  7. Android Studio 3.0 新特性
  8. android 静默安装、卸载实现
  9. android:gravity android:layout_gravity
  10. Android 要想美化就用Shape