zoukankan      html  css  js  c++  java
  • ref和out的使用及区别

     1.  ref的使用:使用ref进行参数的传递时,该参数在创建时,必须设置其初始值,且ref侧重于修改;

      2. out的使用: 采用out参数传递时,该参数在创建时,可以不设置初始值,但是在方法中必须初始化,out侧重于输出;

    注释:当希望方法返回多个值时,可以用out,并且一个方法中的参数可以有一个或多个out参数;使用 out 参数,必须将参数作为 out 参数显式传递到方法中,但是out 参数的值不会被传递到 方法中,且属性不是变量,不能作为 out 参数传递。

        ref是有进有出,而out是只出不进。

    举例如下:

    out的使用

       class Program
        {
            static void Main(string[] args)
            {

         string tmp;    //先声明,但不初始化

         User _user=new User();      

         _user.Name(out tmp);        //调用Name方法

                  Console.WriteLine("{0}",tmp); //这时tmp的值为“在这里面赋值了”

                  Console.ReadKey(true);

       }

         }

      class User{

        public void Name(out string tmps)

               {

           tmps="在这里面赋值了";

               }

          }

           使用out结果输出: 在这里面赋值了

     ref的使用

       class Program
        {
            static void Main(string[] args)
            {

         string tmp="传值之前";    //声明并初始化        这时如果输出tmp值为"传值之前"

              User _user=new User();

                  _user.Name(ref tmp);

                  Console.WriteLine("{0}",tmp);

                  Console.ReadKey(true);

            }

        }

        class User {

             public void Name(ref string tmps)

             {

                  tmps="传值之后";

             }

        }

        使用ref方法结果输出:传值之后

  • 相关阅读:
    ios UIWebView截获html并修改便签内容(转载)
    IOS获取系统时间 NSDate
    ios 把毫秒值转换成日期 NSDate
    iOS  如何判断当前网络连接状态  网络是否正常  网络是否可用
    IOS开发 xcode报错之has been modified since the precompiled header was built
    iOS系统下 的手机屏幕尺寸 分辨率 及系统版本 总结
    iOS 切图使用 分辨率 使用 相关总结
    整合最优雅SSM框架:SpringMVC + Spring + MyBatis 基础
    Java面试之PO,VO,TO,QO,BO
    Notes模板说明
  • 原文地址:https://www.cnblogs.com/gygtech/p/9634813.html
Copyright © 2011-2022 走看看