C# 允许在同一程序中使用相同的多个解构函数方法 输出参数的数量或相同数量和类型的输出参数 不同的顺序。
它是新元组语法的一部分 - 与 Tuple 类无关,但取自函数式编程。
Deconstruct 关键字用于解构函数
示例
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