msdn documentation on out说,作为输出传递的参数必须在函数内分配一个值。从该网站举例:参考和输出值类型变量
class OutExample
{
static void Method(out int i)
{
i = 44;
}
static void Main()
{
int value;
Method(out value);
// value is now 44
}
}
根据当INT“价值”的声明是我的理解是已分配的默认值为0(因为int是一个值类型,不能为null)那么,为什么它是否需要“方法”修改其值?
同样,如果使用“ref”而不是out,是否需要初始化“value”?
有这样的问题What's the difference between the 'ref' and 'out' keywords?但没有人想把2和2放在一起。
我不认为有任何‘垃圾’值。'int'将被分配的缺省值'0',并且当一个变量只被声明时,它是未赋值的。在.Net中没有像C,C++这样的垃圾值的概念。 – CriketerOnSO
'out'只指定方法**将**修改参数的值。即使该参数被分配了一些“非垃圾”值。 – CriketerOnSO