1.ref

1)修饰方法的参数,在调用的时候必须在变量前面加上ref关键字。

2)ref修饰的参数,传递时只能传递变量,不能传递常量。

3)ref修饰的参数,传递的是变量的地址,不是变量的值。这样在所调用的方法中操作变量其实即操作原变量的值。

 

2.out

1)out也是传递的变量的地址。

2)在方法中必须对out修饰的参数进行赋值。

 

区别:

1)out侧重于参数的输出;

2)ref侧重于参数的修改;

3)ref修饰的参数在调用之前必须给传递的变量赋值,因为在方法中可能会用到这个参数的值;

4)out修饰的参数在调用前可以不附初始值,因为在方法中肯定会为其赋值。