c#中,一般函数只能返回一个返回值,但是有时候需要返回多个返回值,这个时候就可以使用ref或out。
ref参数是按引用传递,传递的是地址值,函数内部可以对传入的ref参数值进行改变时,函数外部对应的变量也会改变,但是变量需要在调用函数之前就进行初始化,不然函数内部给传入的ref参数赋值时会报错。
out参数有些类似,也是传递地址值,函数内部out参数值的改变,同样会改变函数外部对应的变量,但是传入函数的时候会初始化这些out参数,函数内部可以直接对out参数赋值。
总结:调用函数时,函数内部需要用到传入参数的值时,用ref,且传入之前要完成初始化;用不上的传入参数的值的话,用out就可以了。