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方法结果输出:传值之后

  • 相关阅读:
    查找谁调用了BTE事件
    ABAP标准屏幕调用选择屏幕
    CG3Y CG3Z 一个上传一个下载
    捕获BDC报的错误
    MM主要的表和主要字段
    获取随机数  QF05_RANDOM_INTEGER
    Query-Convert QuickView是灰…
    SAP_整体修改一个内表的某一个字段…
    程序员永远的痛之字符编码的奥秘
    关于绑定变量、关于占位符
  • 原文地址:https://www.cnblogs.com/gygtech/p/9634813.html
Copyright © 2011-2022 走看看