C#中ref和out

值传递原理:传递的是变量所对应数据的一份拷贝,而非引用,因此提出ref和out关键字

注意:两者都是按地址进行传递的,传递后将改变原来参数的值。
           使用时方法定义和调用方法都必须显示的调用

区别:1. 关于重载
                有ref、out关键字的方法可以与无ref、out关键字的方法进行重载。但是不能在ref、out之间重载
           2 .调用前赋初值
                ref作为参数的函数在调用前,实参必须赋初值
                out作为参数的函数在调用前,实参可以不赋初值
           3 .在函数内,引入的参数初始值问题
                在调入函数内,ref引入的参数可以不赋初值
                在调入函数内,out引入的参数在返回前最少要赋值一次
例子
   
 private static void Swap(ref in a, ref int b)
    {
        ....
    }
    Swap(ref a,ref b);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值