标签:
简介:ref和out都是C#中的关键字,所实现的功能也差不多,都是指定一个参数按照引用传递。对于编译后的程序而言,他们之间没有任何区别,也就是说他们只有语法的区别
主要区别分析:
注:这里只介绍比较重要的区别,其他的区别通过这几条都可以分析出来
1 static void Main(string[] args) 2 { 3 int i=3; //对于ref这里必须进行初始化 4 int j=4; //对于out这里初始化了也没用,方法体了是得不到这个值的 5 method(ref i); //method(ref int i=3)这样是错误的 6 method(out j) //method(out int i=3)这样也是错误的 7 Console.ReadKey(); 8 } 9 10 static void method(ref int i) 11 { 12 i=20; //在这里也可以不对i进行赋值 13 Console.WriteLine(i); 14 } 15 16 static void method(out int i) 17 { 18 i=20; //这里就必须给i进行赋值了 19 Console.WriteLine(i); 20 }
下面介绍ref和out关于重载和调用前的初始值:
下面通过两个案例深入进行分析:
案例一:
案例二:
标签:
原文地址:http://www.cnblogs.com/fengxuehuanlin/p/4546348.html