如果编译器接受带有或不带out关键字的参数,并且具有不同的语义,那将是有意义的,但是如果必须添加关键字以使代码编译,那么使用是什么?编译器不应该自动处理它吗?
同样的参考
class X { public void Y(int i) { ... } public void Y(out int i) { ... } }
在这种情况下,如果在调用方法时没有编写此关键字,则编译无法理解应该调用带有键控输出的方法.通常,您应该在使用此keyworrd声明的方法时写出来.
当然,当你在调用方法时写出来时,你肯定知道这个变量可以在方法中改变.它非常易读.
MSDN Article