C#的out、ref、in修饰符的使用解释与params可变参数

out修饰符

在c#中,当希望方法返回多个值时,声明 out方法很有用。使用 out参数的方法仍然可以将变量用作返回类型 ,但它还可以将一个或多个对象作为 out参数返回给调用方法。
例:
        public static bool TestOut(string pass,out int a,out bool b,out string msg)
        {
            a = 123;
            b = true;
            if (pass == "123456")
            {
                msg = "密码正确";
                return true;
            }
            else
            {
                msg = "密码错误";
                return false;
            }
        }

当前定义了一个密码判断的方法,但该方法返回值是bool类型,我们还需要返回一个提示信息string类型的话,就可以用到out参数。
而out参数声明需要在方法形参上定义:如int a,则写成out int a
调用该方法时如果该方法声明了该out形参,那么调用方法实参也需要加上out,且必须先定义好变量,如:
int a;
调用方法名(out a);
out参数则重于在同一个方法中可返回不同类型的值

ref修饰符

ref的作用就是把方法外面的值带到方法内,方法内修改完该值的改变会直接改变方法外传进来的属性值。ref方法则不需要返回值
调用方法和out类似,但ref的主要作用是将一个变量带入方法中进行改变,改变完成后再将改变的值带出方法

in默认传参

总结:out参数必须要求在方法内部进行赋值,ref参数必须要求在方法外部先进行赋值

params可变参数

在形参中这样写,并且是形参列表中最后一位,params int[] arr

调用方法名(1,2,3,4)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aizhaiyu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值