• c# ref与out用法


     class Program
        {
            static void Main(string[] args)
            {
                //普通 :
                int k1 = 1;
                int result1 = Test1(k1, 2);
                Console.WriteLine("/*普通:*/");
                Console.WriteLine(result1);
                Console.WriteLine(k1);
    
                //ref :
                //用法: 参数要用 ref 一起传递,并且是可以赋值的变量,ref 变量要先赋值
                int k2 = 1;
                int result2 = Test2(ref k2, 2);
                Console.WriteLine("/*ref:*/");
                Console.WriteLine(result2);
                Console.WriteLine(k2);
    
                //out :
                //用法: 参数要用 out 一起传递,并且是可以赋值的变量,out 变量不用先赋值(只定义即可)
                int k3;
                Console.WriteLine("/*out:*/");
                int result3 = Test3(out k3, 2);
                Console.WriteLine(result3);
                Console.WriteLine(k3);
            }
    
            /// <summary>
            /// 普通
            /// </summary>
            public static int Test1(int k, int p)
            {
                k++;
                return k + p;
            }
    
            /// <summary>
            /// ref
            /// </summary>
            public static int Test2(ref int k, int p)
            {
                k++;
                return k + p;
            }
    
            /// <summary>
            /// out
            /// </summary>
            public static int Test3(out int k, int p)
            {
                //out 未赋值的变量不能使用,所以在方法内部赋值。
                k = 1 + 1;
                return k + p;
            }
        }
    View Code

    运行结果:

  • 相关阅读:
    500. 键盘行
    657. 判断路线成圈
    771. 宝石与石头
    461. 汉明距离
    Java 基本数据类型
    Windows下的DOM操作
    jQuery学习笔记
    Java(16-19)
    Java(1-15)
    总结
  • 原文地址:https://www.cnblogs.com/SeNaiTes/p/10286025.html
Copyright © 2020-2023  润新知