• ref和out区别概要


    一直知道ref和out都是引用类型传值的。不过没太明白他们之间的区别,今天又长了点小知识。

    大伙都知道,进行参数传递的时候如果想传递地址,可以使用ref或者out关键字。其实两者都是按地址传递的,使用后都将改变原来的数值。
    主要不同点:
    ref是可以把参数的值传递进函数的,但是Out在函数中必须首先赋值才能使用,这样就会覆盖原来传进来的值。

    简要概括就是ref有进有出,而out是只出不进。

    例如下面两个方法中,ValueWithRef无需重新赋值,而ValueWithOut如果不为i重新赋值便会编译错误。

     //正常运行,输出结果仍为传入时的i的值
            static void ValueWithRef(ref int i)
            {
                Console.WriteLine(i.ToString());
            }
            
    //报错
            static void ValueWithOut(out int i)
            {
               
    // i = 200;//如果该行被注释掉则报错
                Console.WriteLine(i.ToString());
            }
  • 相关阅读:
    【洛谷习题】公路修建
    priority_queue用法简记
    【洛谷习题】无线通讯网
    【SCOI2005】繁忙的都市
    第四周 3.20-3.26
    第三周 3.13-3.19
    第二周 3.6-3.12
    第一周 2.28-3.5
    第六周 2.21-2.27
    2018湘潭邀请赛 AFK题解 其他待补...
  • 原文地址:https://www.cnblogs.com/janes/p/1882083.html
Copyright © 2020-2023  润新知