传递参数ref与输出参数out
ref与out都可以在全局中改变传入的参数的值
但使用ref时,传入的参数必须已赋值,否则是非法的
使用out时,传入参数可以未赋值,但无论如何都必须在方法中赋值
例:
1 static double a = 10; 2 static double b = 20; 3 4 static void Test(ref double x,out double y) 5 { 6 y = 0; //必须要在方法中赋值一下 7 x *= 10; 8 y *= 20; 9 Console.WriteLine(x); 10 Console.WriteLine(y); 11 } 12 static void Main(string[] args) 13 { 14 Console.WriteLine(a); 15 Console.WriteLine(b); 16 17 Test(ref a,out b); 18 Console.WriteLine(a); 19 Console.WriteLine(b); 20 Console.ReadKey(); 21 }