《随笔二十》——C#中的 “ 参数数组 (关键字 params) 引用参数 (ref) 输出参数 (out)”

本文详细介绍了C#中的参数数组(params关键字)、引用参数(ref)和输出参数(out)。参数数组允许函数接收数量不定的同类型参数,简化了代码。引用参数和输出参数都涉及按引用传递,其中引用参数需传入已初始化的变量,输出参数则可以在函数内部初始化。文章还讨论了变量的作用域以及委托(delegate)的概念,展示了如何声明和使用委托调用函数。
摘要由CSDN通过智能技术生成

目录

参数数组 (关键字 params)

引用参数 (ref)

输出参数 (out)

其他结构中的变量的作用域

委托 (delegate )


● 返回值通常是函数执行的一些处理的结果,当执行到 return 语句时, 程序会立即返回调用代码, return 语句后面的代码都不会执行。

●  执行一行代码的函数可以使用函数 C# 6 引入的一个功能, 使用 =>(Lambda 箭头)来实现这一个功能(相当于C++中的内联函数)语法为:

static 返回类型 标识符()=> 标识符1 * 标识符2

参数数组 (关键字 params


● c# 允许为函数指定一个(只能指定一个)特殊参数, 可变参数 params, params后面必须跟数组,之后不允许任何其他参数。这个参数必须是函数定义中的最后一个参数,称为参数数组。

需要注意的有:

  • 参数数组必须是一维数组  
  • 不允许将params修饰符与ref和out修饰符组合起来使用   
  • 与参数数组对应的实参可以是同一类型的数组名,也可以是任意多个与该数组的元素属于同一类型的变量 
  • 若实参是数组则按引用传递,若实参是变量或表达式则按值传递  
  • 用法:可变的方法参数,也称数组型参数,适合于方法的参数个数不知的情况,用于传递大量的数组集合参数;当使用数组参数时,可通过使用params关键字在形参表中指定多种方法参数,并在方法的参数表中指定一个数组
     

那参数数组允许使用个数不定的参数调用这个函数, 可以使用params 关键字定义它。

● 参数数组可以简化代码, 因为在调用代码中不必传递数组,而是传递同类型的几个实参, 在主调函数中使用 该函数调用, 该函数中的实参就是个数不定的实参。

 参数数组的语法为:

static 数据类型 函数标识符 (参数数据类型 标识符N,params 数组数据类型[] 标识符)
{
  // statement
}

在主调函数中调用格式为: 函数标识符(xN,(x1,x2,xN));

其中(x1,x2,xN)都是 数组数据类型 的值, 用来初始化数组,可以指定的实参个数几乎不受限制,但它们必须跟数组数据类型相同。甚至不必指定参数。

        没有用 param 参数的函数
        static int MaxValue(int[] intArray)
        {
            int maxVal = intArray[0];
            for (int i = 1; i < intArray.Length; ++i)
            {
                if (intArray[i] > maxVal)
                {
           
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值