C#方法参数传递-引用参数ref关键字

引用传递好比你把文件在网络上的地址告诉他人,他人通过网络访问你计算机的文件,他可以对文件进行修改并保存,此时,文件的内容就会发生变化。引用传递在方法调用之后,可以保留参数值的修改。要实现引用传递,C#通过ref关键字和out关键字来实现。

引用参数(Reference Parameter )

格式:方法名称(ref 参数类型 参数名称[,ref 参数类型 参数名称])

ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字。

using System;

class Program

{

static void Main(string[]args)

{

int num1 = 4;

int num2 = 8;

Console.WriteLine("交换之前的字符串顺序为{0}、{1}", num1, num2);

Program obj = new Program(); //创建对象

obj.Change(ref num1, ref num2); //调用交换方法

Console.WriteLine("交换之后的字符串顺序为{0}、{1}", num1, num2);

Console.ReadLine();

}

//交换数据的方法

private void Change(ref int num1, ref int num2)

{

int temp;

temp = num1;

num1 = num2;

num2 = temp;

}

}

注意:使用引用传递时,在方法定义中使用ref关键字修饰参数,在方法调用中也必须使用ref关键字。而且必须在调用方法之前对传递的参数进行初始化。