C# 7.0 中的解构函数是什么?
csharpserver side programmingprogramming更新于 2025/9/8 15:52:17
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

