【发布时间】:2014-10-24 09:19:45
【问题描述】:
我是意大利人,抱歉我的英语不好!我想知道是否有一种方法可以随时使用通过引用或值传递参数的方法。
例如,如果我想要这个方法:
public mehtod (ref int a)
{
//do some stuff
}
还有这个方法
public method (int a)
{
//do the same stuff of method(ref int a)
}
有没有一种方法可以获得相同的结果,但无需使用相同的主体创建两个不同的方法?我需要它是因为有时我希望使用“方法”产生副作用,有时我希望 a 不被修改!
非常感谢!
【问题讨论】:
-
如果方法具有相同的主体,您一定不能使用
a是ref参数这一事实,那么为什么要包含该版本呢? -
@Andrew 这不是真的;您可以随时修改参数值 - 有趣的问题是:调用者 是否看到更改。这不会影响方法体
-
@MarcGravell:我想这是真的,很好。
标签: c# methods pass-by-reference pass-by-value