public static void GetFunc() { BMI bmi = new BMI() { Height = 175, Weight = 70 }; (double x, double y) = bmi; Console.WriteLine($"身高 : {bmi.Height}, 體重 : {bmi.Weight}"); (new BMI() { Height = 175, Weight = 70 }).Deconstruct2(out double h, out double w); Console.WriteLine($"身高 : {h}, 體重 : {w}"); (new BMI() { Height = 1.75, Weight = 70 }).Deconstruct2(out double h2, out double w2, out double b); Console.WriteLine($"身高 : {h2}, 體重 : {w2} 且BMI計算為 {b}"); }
/// <summary> /// Extension多載 /// </summary> /// <param name="bmi"></param> /// <param name="h"></param> /// <param name="w"></param> /// <param name="b"></param> public static void Deconstruct2(this BMI bmi, out double h, out double w, out double b) { h = bmi.Height; w = bmi.Weight; b = (bmi.Height * bmi.Height) / bmi.Weight; }
/// <summary> /// </summary> /// <param name="bmi"></param> /// <param name="h"></param> /// <param name="w"></param> public static void Deconstruct2(this BMI bmi, out double h, out double w) { h = bmi.Height; w = bmi.Weight; }