What is the difference between ref and out?
本问题已经有最佳答案,请猛点这里访问。
当我尝试用ref关键字替换out关键字时,下面的代码中没有错误。当我尝试用out代替ref时,出现了一个错误,如"unassigned out parameter"这个错误是什么意思?
1 2 3 4 5 6 7 8 9 10 11 12 13 | static void Main() { string test ="34"; addOneToRefParam(out test); Console.WriteLine("test is :" + test); } public static void addOneToRefParam(out string i) { int k =Convert.ToInt32(i) + 1; i = Convert.ToString(k); Console.WriteLine("i is :" + i); } |
在传递给函数之前,必须初始化
1 2 3 | int i; Foo(i); // error unassigned variable Foo(ref i) // same error |
对于