zoukankan      html  css  js  c++  java
  • C#中值参数、ref参数、out参数和params四种参数的区别

    值参数:声明是不加任何修饰的参数,它表明实参和形参之间按值传递,当使用值参数的方法被调用时,编译器为形参分配存储单元,然后将对应的实参的值复制到形参中,由于是值类型的传递方式,所以在方法中对形参的修改,并不会影响实参。

    ref参数:ref参数使用形参按引用传递,在方法中,对形参所做的任何更改都将反映在实参中,如果是要用ref参数,则方法声明和方法调用都必须显示的使用ref关键字。

    out参数:out键字用来定义输出参数,它会导致参数通过引用来传递,这与ref参数类似,不同之处在于ref要求变量必须在传递之前进行赋值,而使用out关键字定义的参数不用进行赋值即可使用。如果要使用out参数,则方法声明和方法调用都必须显示的使用out关键字。

    params参数:声明方法时,如果有多个相同类型的参数,可以定义为params参数,params参数是一个一维数组,主要用来指定在参数数目可变时所采用的方法参数。

    使用ref参数时,需注意:

    1.ref关键字只对跟在他后面的参数有效,而不是应用于整个参数列表。

    2.调用方法时必须使用ref修饰实参,而且因为是引用参数,所以实参和实参的参数类型一定要完全匹配。

    3.实参只能是变量,不能是常量或者表达式。

    4.ref参数在调用之前一定要进行赋值。

  • 相关阅读:
    爬虫_requests
    第十四周总结
    《三个和尚》观看感悟
    第十三周总结
    ThinkPHP
    ThinkPHP配置安装
    ThinkPHP_1
    构建之法阅读笔记六
    网络工程师必备学习内容!深度理解OSPF——OSPF是什么?为什么要用OSPF?
    网络工程师学习笔记——RIP路由汇总实验配置
  • 原文地址:https://www.cnblogs.com/AranNice/p/13920597.html
Copyright © 2011-2022 走看看