为了账号安全,请及时绑定邮箱和手机立即绑定

‘ref’和‘out’关键词有什么区别?

‘ref’和‘out’关键词有什么区别?

C#
阿波罗的战车 2019-07-05 16:40:35
‘ref’和‘out’关键词有什么区别?我正在创建一个函数,在该函数中,我需要传递一个对象,以便它可以被该函数修改。在以下方面有何区别:public void myFunction(ref MyClass someClass)和public void myFunction(out MyClass someClass)我应该用哪种?为什么?
查看完整描述

3 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

ref告诉编译器,在输入函数之前对象进行初始化,而out告诉编译器,对象将在函数内初始化。

所以当ref是双向的,out只在外面。


查看完整回答
反对 回复 2019-07-05
?
富国沪深

TA贡献1790条经验 获得超9个赞

这个ref修饰语是指:

  1. 值已经设置,并且
  2. 该方法可以对其进行读取和修改。

这个out修饰语是指:

  1. 该值未被设置,且无法被该方法读取。

    直到

    已经设定好了。
  2. 方法

    在回来之前把它设置好。


查看完整回答
反对 回复 2019-07-05
  • 3 回答
  • 0 关注
  • 579 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信