C#을 사용하면 동일한 수의 out 매개변수 또는 동일한 수와 유형의 out 매개변수를 다른 순서로 사용하여 동일한 프로그램에서 여러 분해자 메서드를 사용할 수 있습니다.
이것은 새로운 튜플 구문의 일부입니다. 이것은 Tuple<> 클래스와 관련이 없지만 함수형 프로그래밍에서 가져옵니다.
Deconstruct 키워드는 Deconstructors에 사용됩니다.
예시
public class Employee{
public Employee(string employeename, string firstName, string lastName){
Employeename = employeename;
FirstName = firstName;
LastName = lastName;
}
public string Employeename { get; }
public string FirstName { get; }
public string LastName { get; }
public void Deconstruct(out string employeename, out string firstName, out
string lastName){
employeename = Employeename;
firstName = FirstName;
lastName = LastName;
}
}
class Program{
public static void Main(){
Employee employee = new Employee("emp", "fname", "lname");
(string EName, string Fname, string Lname) = employee;
System.Console.WriteLine(EName);
System.Console.WriteLine(Fname);
System.Console.WriteLine(Lname);
Console.ReadLine();
}
} 출력
emp fname lname