微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

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

复制构造函数一个参数化构造函数,包含相同类类型的参数。它的主要用途是将新实例初始化为现有实例的值。通常,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对象属性值。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐