c#
方法中形参与实参之间值得传递
- 通过return 返回值;将被调方法中的值传递给调用方法中
int Func(int n)
{
n++;
return n;
}
static void main(string[] args)
{
int a=1;
a=Func(a);
}
2.在调用方法时,使用ref/out关键字
使用ref关键字
int Func(ref int n) //在形参前也要加上ref
{
n++;
}
static void main(string[] args)
{
int a=1;
Func(ref a); //调用时在实参前加上ref
}
使用out关键字
int Func(out int n) //在形参前也要加上out
{
n=1; //使用out时必须在被调方法中对形参进行初始化,否则会报错
n++;
}
static void main(string[] args)
{
int a=1;
Func(out a); //调用时在实参前加上out
}
所以在使用out关键字时,在被调方法进行时,形参就被初始化了,即实参无法给形参赋值,因此使用out调用的方法只会得到一个固定的返回值。不会因为实参的改变而改变。