집 >백엔드 개발 >C#.Net 튜토리얼 >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); } } }
출력:
설명:
위 예에서는 복사 생성자(user1)의 인스턴스를 생성하고 사용자 개체의 인스턴스를 매개 변수 유형으로 사용했습니다. . 따라서 user 개체의 속성이 user1 개체로 전송됩니다. user1 개체의 속성 값을 변경하면 이러한 속성 값은 User 개체 속성 값에 영향을 미치지 않습니다.
위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 흥미로운 내용을 보려면 PHP 중국어 웹사이트의 관련 튜토리얼 열을 주의 깊게 살펴보세요! ! !
위 내용은 C#의 복사 생성자는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!