一、基本概念
1.目的:解决函数实参传递的问题。
在函数调用中,是把一个值传递给函数使用的一个变量,对函数中次变量的任何修改都不影响函数调用中指定的参数。
这在C语言中叫做“函数参数的值传递”,即对形参的运算不影响实参,为了可以同时作用到函数的实参,c语言又引入了“地址传递”的概念,并引入了指针。
但是在c#中舍弃了指针的概念,因而引入了“引用参数”的概念。
二、定义及使用
1.定义
static void ShowDouble (ref int val)
{
val*=2;
Console.WriteLine ("val doubled={0},val);
}
2.调用
int number=5;
Console.WriteLine("number ={0}",number);
ShowDouble (ref number);//传入的是引用参数,则将number 的值传递给形参val 后,改变了val 的值,同时也改变了引用参数number 的值
Console.WriteLine("number ={0}",number);
3.执行结果
number=5
val doubled =10
number=20