54.C#函数参数out、ref的使用以及Python

函数参数out、ref都是向外传递参数值,以弥补返回值只有一个的缺陷。函数参数可以有多个out参数,因此这样的函数返回的数据是开放的。out和ref的区别是out不用为out参数附初值,而ref必须附初值。

python可以return可以返回多个参数,一般不必要使用out和ref参数。这降低了python的难度。


public static void FillArray(out int[] arr)
{
    arr = new int[] { 1, 2, 3, 4, 5 };
}

public static void FillArrayRef(ref int[] arrRef)
{
    arrRef = new int[] { 6, 7, 8, 9, 0 };
}

public static void MaxMinValue(int[] intArray, out int max, out int maxIndex)
{
    max = intArray[0];
    maxIndex = 0;
    for(int i=1;i<intArray.Length;i++)
    {
        if (intArray[i] > max)
        {
            max = intArray[i];
            maxIndex = i;
        }
    }
}
static void Main(string[] args)
{
    //用out参数填充数组
    int[] theArray;//不用初始化
    useout.FillArray(out theArray);
    Console.WriteLine("theArray:");
    foreach(int i in theArray)
    {
        Console.Write(i);
        Console.Write(" ");
    }

    //用ref参数填充数组
    int[] arrRef = new int[5];//需要初始化
    u
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值