C# 中 out 和 ref 关键字的区别
csharpserver side programmingprogramming
out 关键字
out 关键字用于将参数作为引用类型传递给方法,主要在方法必须返回多个值时使用。ref 关键字也用于将参数作为引用类型传递给方法,在方法中修改现有变量时使用。以下是 C# 中 ref 和 out 关键字的有效用法。
示例
using System.IO; using System; public class Program { public static void update(out int a){ a = 10; } public static void change(ref int d){ d = 11; } public static void Main() { int b; int c = 9; Program p1 = new Program(); update(out b); change(ref c); Console.WriteLine("更新后的值为:{0}", b); Console.WriteLine("更改后的值为:{0}", c); } }
输出
更新后的值为:10 更改后的值为:11
以下是 ref 和 out 关键字之间的一些重要区别。
Sr.No. | 关键 | ref 关键字 | out 关键字 |
---|---|---|---|
1 | 目的 | 当被调用的方法需要更新传递的参数时,使用 ref 关键字。 | 当被调用的方法需要更新传递的多个参数时,使用 out 关键字。 |
2 | 方向 | ref 关键字用于双向传递数据。 | out 关键字用于单向获取数据。 |
3 | 初始化 | 在将变量作为 ref 传递之前,需要对其进行初始化,否则编译器会抛出错误。 | 如果使用了 out 关键字,则无需初始化变量。 |
4 | 初始化 | 在调用方法中,不需要初始化作为 ref 传递的参数。 | 在调用方法中,需要初始化作为 out 传递的参数。 |