在方法中对变量做出修改,并将修改后的值保存下来,效果类似于C语言中的指针。
例如例子中的fun1方法并没有返回值,但是依然可以使得Main方法中的变量a的值发生变化。
namespace ref参数用法
{
class Program
{
static void Main(string[] args)
{
int a = 100;
int num1 = 10, num2 = 20;
fun1(ref a);
Console.WriteLine(a); //输出 a = 300
fun2(ref num1,ref num2);
Console.WriteLine("num1 = {0},num2 = {1}",num1,num2);
Console.ReadKey();
}
public static void fun1(ref int a)
{
a += 200;
}
public static void fun2(ref int num1,ref int num2) //ref 实现数字交换
{
int temp;
temp = num1;
num1 = num2;
num2 = temp;
}
}
}
---------------------------------------------------------------