หลายๆคนที่เขียนโปรแกรม อาจจะเคยต้องการให้เมธอด return ค่ากลับมาให้เรามากกว่าหนึ่งค่าจากเมธอดเดียว บางคนอาจจะเคยใช้ out แล้ว แต่บางคนอาจจะยังไม่รู้จัก เอาแบบไม่อ้างหลักการอะไรมากมายนะครับ เหตุผลที่ผมจะใช้ out ก็ต่อเมื่อต้องการให้เมธอดนั้น return ค่ากลับมามากกว่าหนึ่งค่าโดยที่ไม่ต้องใช้ object หรือ struct โดยสามารถศึกษาได้ตามตัวอย่างโค๊ดง่ายๆด้านล่างนี้ครับ
class Program { static void Main(string[] args) { double value1 = 10; double value2 = 5; double plus, minus, multiple, divide; OutMethod(value1, value2, out plus, out minus, out multiple, out divide); //Call method OutMethod Console.WriteLine("Test out method by GuShared.com"); Console.WriteLine(value1 + " + " + value2 + " = " + plus); Console.WriteLine(value1 + " - " + value2 + " = " + minus); Console.WriteLine(value1 + " * " + value2 + " = " + multiple); Console.WriteLine(value1 + " / " + value2 + " = " + divide); Console.Read(); } static void OutMethod(double v1, double v2, out double plus, out double minus, out double mul, out double div) { plus = v1 + v2; minus = v1 - v2; mul = v1 * v2; div = v1 / v2; } }
ผลลัพท์