Net Core教程

C#中ref、out、in的区别与使用

本文主要是介绍C#中ref、out、in的区别与使用,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
  • ref 修饰符,指定参数由引用传递,可以由调用方法读取或写入。
  • out 修饰符,指定参数由引用传递,必须由调用方法写入。
  • in 修饰符,指定参数由引用传递,可以由调用方法读取,但不可以写入。

遂码之,首先是in:

image
可以看到,不能对in参数赋值,可见只能读,不能写

再来out:

image
可以看到,out参数不能读,只能写,就算在main中初始化,也是当做未赋值来看待

最后再来ref:

image
ref没有任何报错,可见是可读可写的,了解,还有就是ref参数必须初始化,不然会报错,in也是。

ref、out、in参数不能当做重载的依据

image

总结

ref、out、in都是将参数按引用来传递,我们普通做法什么都不加是用的值传递,这在内存分配上是有差异的。

ref:可读可写(可进可出)

out:只能写不能读(只出不进)

in:只能读不能写(只进不出)

这篇关于C#中ref、out、in的区别与使用的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!