ref与out的区别

来源:互联网 发布:qq群排名优化软件 编辑:程序博客网 时间:2024/05/29 11:43
总结以上四条得到ref和out使用时的区别是:
①:ref指定的参数在函数调用时候必须初始化,不能为空的引用。而out指定的参数在函数调用时候可以不初始化;
②:out指定的参数在进入函数时会清空自己,必须在函数内部赋初值。而ref指定的参数不需要。
代码:
class Program
    {
        static void Main(string[] args)
        {
            Program pg = new Program();
            int x = 10;
            int y = 20;
            pg.GetValue(ref x, ref  y);
            Console.WriteLine("x={0},y={1}", x, y);


            Console.ReadLine();
          
        }


        public void GetValue(ref int x, ref int y)
        {
            x = 521;
            y = 520;
        }
    }

class Program
    {
        static void Main(string[] args)
        {
            Program pg = new Program();
            int x=10;
            int y=233;
            pg.Swap(out x, out y);
            Console.WriteLine("x={0},y={1}", x, y);


            Console.ReadLine();
          
        }


        public void Swap(out int a,out  int b)
        {
            
            int temp = a;   //a,b在函数内部没有赋初值,则出现错误。
            a = b;
            b = temp;
        }     
    
    }
0 0
原创粉丝点击