相关疑难解决方法(0)

.NET中ref和out参数之间的区别

.NET中的参数refout参数有什么区别?一个人比另一个人更有用的情况是什么?什么是一个可以使用而另一个不能使用的代码片段?

.net c#

401
推荐指数
7
解决办法
26万
查看次数

什么时候C#'out'或'ref'参数的值实际返回给调用者?

当我对一个outref参数进行赋值时,是否会立即将值赋给调用者提供的引用,还是在方法返回时分配给引用的outref参数值?如果方法抛出异常,则返回值吗?

例如:

int callerOutValue = 1;
int callerRefValue = 1;
MyMethod(123456, out callerOutValue, ref callerRefValue);

bool MyMethod(int inValue, out int outValue, ref int refValue)
{
    outValue = 2;
    refValue = 2;

    throw new ArgumentException();

    // Is callerOutValue 1 or 2?
    // Is callerRefValue 1 or 2?
}
Run Code Online (Sandbox Code Playgroud)

.net c# out-parameters ref-parameters

14
推荐指数
2
解决办法
1517
查看次数

标签 统计

.net ×2

c# ×2

out-parameters ×1

ref-parameters ×1