美文网首页
C#中的out和ref

C#中的out和ref

作者: 追风筝的人0 | 来源:发表于2020-02-24 18:46 被阅读0次

ref参数

在C#中,调用函数时的实参对应到函数的形参时,实际是新建一个变量,然后将实参的值赋给形参,然后函数再用新建出来的形参进行相关计算,函数结束时或返回这个值或丢弃,实参并不受影响,有时候需要对实参造成影响,就需要使用ref参数,添加ref参数后,调用函数时从实参对应到形参就不再复制,而是传递引用,也就是说ref的形参和实参实际指向了内存中的同一个变量

ref传递的变量必须在函数调用前赋值

通俗理解是ref的形参是这个实参在这个函数中的代号,类似本名叫狗蛋(实参),然后进了某个特工组织(函数内部),从此就以编号9527(ref形参)称呼你,在这个组织中你叫9527,出了这个组织你还是叫狗蛋,但是在组织中受的伤,出了组织虽然叫狗蛋了但是伤还在;而不加ref,就像把U盘里的PPT通过微信发给了另一位同学,另一位同学拿去一顿乱改,然后可能会发给你(作为返回值返回)可能不会发给你(不返回),但是对你后面拿着你U盘里面的PPT出去演讲没有任何关系,因为你没有主动接收并覆盖原来的PPT

out参数

out参数和ref参数很像,也是传递引用,只是使用上有一点区别

out形参的实参在函数外无论是否赋值,在传递到函数内部时都是相当于未初始化的,必须在函数内部对其进行初始化,函数运行结束后形参的所有修改都会对应到实参

相关文章

  • C#中out和ref之间的区别

    在本文,你将学会C#中 out 和 ref各自的区别,依旧具体使用场景。 共同点out、ref都是传递引用(内存地...

  • C#中的out和ref

    ref参数 在C#中,调用函数时的实参对应到函数的形参时,实际是新建一个变量,然后将实参的值赋给形参,然后函数再用...

  • Out And Ref

    在C#中Out和Ref使用方法基本一样。Out使用时其实参数可以不赋值,在使用时在实参数前面加上Out,如下:Ou...

  • Ref、Out、In

    Ref ??? 传引用??? Out(a new feature of C# 7) string input1 =...

  • Unity中有关C#的几个要点

    大致总结下C#中几个常见知识点的个人理解,以对基础已经有所了解为前提。 ref/out 区别:ref参数需要在传入...

  • C# ref out

    ref按引用传递,在方法内可以直接修改原对象。是一种直接修改原变量的方式 out,方法内必须对参数进行赋值,外部无...

  • C#之ref和out

    思考下面的代码会输出什么值。 ref用途 ref用来修饰方法的参数,被ref修饰的参数,在调用的时候,会传递过来的...

  • C#:ref 和 out 的区别

    outputi am Keyword109 Press any key to continue... out作为方...

  • C# ref & out

    1. What is ref & out ? 参数传递时按引用传递参数 2.Why need ref & out ...

  • C# 关于ref 和out的区别

    ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传递进去的,out进去后...

网友评论

      本文标题:C#中的out和ref

      本文链接:https://www.haomeiwen.com/subject/ymxiqhtx.html