C# ref和out传参小结

 class Program
    {
        static void REF(ref int i)   
        {
            i++;

            Console.WriteLine("ref--{0}",i);
        }
        static void OUT(out int i)
        {
            i = 1;
            i--;
            Console.WriteLine("out--{0}",i);
        }
        static void Main(string[] args)
        {
            int i = 1;

            REF(ref i);

            Console.WriteLine(i);

            OUT(out i);

            Console.WriteLine(i);

        }
    }
}

/*
 ref:传递的参数是引用,并非参数副本,会直接改变实参
 out:无论外部实参是怎样的数据,都拒绝,只接受函数内部的赋值
 小结:两个传参的应用,个人觉得是在return上,当你想返回多个值的时候,特别是返回程序还要用到的实参时
       不同的是,ref是要在使用函数外部就初始化,out只须申明就可以,因为无论你赋任何值,out参数都不会传进去
       因此,out传参适合函数有多个返回值的时候
 ref--内部值对外部值的改变
 out--内部对外部的赋值
 */

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值