在c#中ref和out的用法和区别
比较直观的解释out:https://www.bilibili.com/video/BV1nt411n7Rx?p=79 ref:https://www.bilibili.com/video/BV1nt411n7Rx?p=81
out和ref的使用场景其实不一样。out适合在方法内返回一个额外的结果参数,而ref适合直接改变一个在方法外面的值,方法改变外部就改变,无需重新定义接住返回值再使用。
我的记录:
out
out可以在方法内部返回多个不同类型的参数
out必须在调用时声明需要返回的参数,并传入形参(其实相当于传入一个形参)
out参数必须在方法内部赋值不然返回的就是空,并且会报语法错误
out返回时可以不用写return
ref使用时需要在外部必须赋值
并且调用时候声明ref
方法内也声明ref
作用:无需返回值,只需在方法内外都声明ref,值将会跟随同步改变
ref和out的异同:
同:1.在调用时候都必须传入关键字,方法内部也必须写入关键字
2.都必须在外部声明需要改变的值
3.都无需return返回,只要调用方法,值就改变可以使用了。
异:1.ref必须在调用的方法外部进行赋值 out必须在方法内部赋值

浙公网安备 33010602011771号