1.
ref和out返回多个类型值的函数(out可以把方法里的值传出去,ref可以把方法里的值传出去也可以把方法外的值传进方法里)
它们的区别是在定义方法的时候用out修饰参数的时候必须有初始值并且最后会把这个初始值传给调用这个方法的定义的变量(不论定义的变量是否赋值)。
而在使用ref修饰参数的时候,在定义方法使用ref修饰参数时,在方法中或者调用方法中必须有一个有初始值,若是在定义方法中设置了初始值,那这时候ref修饰参数会和out修饰参数一样的作用。如果在定义方法的时候没有设置初始值,而在调用方法的时候设置了初始值,那最后变量会被重新赋值。
2.
对于ref和out印象比较深刻,在使用这两个函数的时候遇到了一个小错误。这个程序实现的是定义一个数组,找出这个数组的最大值和最小值并显示出来。但是在查看运行结果的时候发现想显示最大值的时候运行的结果是最小值,想显示最小值的时候运行结果是最大值,以为是自己的最大值最小值这块的代码错误(图中标记3处),找了半天也没找到错误。后来发现自己在调用函数括号里out修饰的参数顺序调换了(标记1和标记2处的区别),这才意识到定义方法后边out修饰参数的顺序要和调用方法后边参数顺序一致。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)