口诀:ref有进有出,out只出不进!
在C#中既可以通过值传递也可以通过引用传递参数。通过引用传递参数允许函数成员更改参数的值,并保持该更改。若要通过引用传递参数,可给相应的参数使用ref或者out关键字。其作用很像C中的指针。
ref的用法:
1 namespace ConsoleApplicationTest20160125 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 string a="初始化!"; 8 refMethod(ref a); 9 Console.WriteLine("ref关键字的用法测试!\t"); 10 Console.WriteLine("结果:a="+a); 11 Console.ReadKey(); 12 } 13 14 private static void refMethod(ref string a) 15 { 16 a = "执行了ref!"; 17 } 18 19 20 }
运行结果:
ref关键字的用法测试!
结果:a=执行了ref!
out的用法:
1 namespace ConsoleApplicationTest20160125 2 { 3 class Program 4 { 5 static void Main(string[] args) 6 { 7 string b;//无需初始化 8 outMethod(out b); 9 Console.WriteLine("out关键字的用法测试!\t"); 10 Console.WriteLine("结果:b=" + b); 11 Console.ReadKey(); 12 13 } 14 15 private static void outMethod(out string b) 16 { 17 b = "执行了out!"; 18 } 19 } 20 }
运行结果:
out关键字的用法测试
结果:b=执行了out!
时间: 2024-10-25 02:25:52