这个问题已经在这里有了答案 :
‘ref’和’out’关键字有什么区别? (26个答案)
2年前关闭。
.NET中的ref和out参数之间有什么区别?在什么情况下一个可以比另一个更有用?一个可以使用而另一个不能使用的代码片段是什么?
ref
out
它们几乎相同-唯一的区别是您out不需要初始化作为参数传递的变量,但必须将其作为ref参数传递给它。
int x; Foo(out x); // OK int y; Foo(ref y); // Error: y should be initialized before calling the method
Ref参数用于可能被修改out的数据,参数用于int.TryParse已经作为函数(例如)的附加输出的数据,这些数据已经使用了返回值。
Ref
int.TryParse