2个回答
展开全部
基本没什么区别
在次函数中调用时改变了其中的数值,主函数中也将发生改变
ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字
out 关键字会导致参数通过引用来传递。这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化。若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字。。
如果一个方法采用 ref 或 out 参数,而另一个方法不采用这两类参数,则可以进行重载,
ref 和 out 关键字在运行时的处理方式不同,但在编译时的处理方式相同。因此,如果一个方法采用 ref 参数,而另一个方法采用 out 参数
在次函数中调用时改变了其中的数值,主函数中也将发生改变
ref 关键字使参数按引用传递。其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。若要使用 ref 参数,则方法定义和调用方法都必须显式使用 ref 关键字
out 关键字会导致参数通过引用来传递。这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化。若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字。。
如果一个方法采用 ref 或 out 参数,而另一个方法不采用这两类参数,则可以进行重载,
ref 和 out 关键字在运行时的处理方式不同,但在编译时的处理方式相同。因此,如果一个方法采用 ref 参数,而另一个方法采用 out 参数
展开全部
概念你看书就可以了,或者上楼上的解说,
我给你两个例子:
ref例子:
定义一个方法:
public void SetValue(ref int count)
{
count = count * 12;
}
调用方法:
int count = 10;
SetValue(ref count);
Console.Write(count);//这里count为120;
=========================================================
out 例子:
定义一个方法:
public viod SetValue(out int count)
{
count = 15;
count = count * 10;
}
调用该方法:
int count;//注意这里可以不初始化;
SetValue(count);
Cosole.Write(count);//这里count为:150
我给你两个例子:
ref例子:
定义一个方法:
public void SetValue(ref int count)
{
count = count * 12;
}
调用方法:
int count = 10;
SetValue(ref count);
Console.Write(count);//这里count为120;
=========================================================
out 例子:
定义一个方法:
public viod SetValue(out int count)
{
count = 15;
count = count * 10;
}
调用该方法:
int count;//注意这里可以不初始化;
SetValue(count);
Cosole.Write(count);//这里count为:150
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询