in: 值传递,默认传递方式;
ref:地址/引用传递,调用时该参数必需已经初始化;
out:地址/引用传递,调用时该参数不需要先初始化(被调用方负责该参数的初始化)。
注1: in 关键字用于向函数传递值;
out 关键字用于从函数接收值,通常用于接收多个返回值(返回值只有一个时,直接用函数返回值就行);
ref 关键字用于通过函数操作变量, 也可以用于向函数传递值或从函数接收值;
注2:ref 与 out 相同之处在于:传递的都是地址/引用。
ref 与 out 不同之处在于:编译器对两种关键字修饰的变量进行的安全性检测不同。