C#学习笔记——(12)out参数

落花浮王杯 提交于 2019-12-23 10:10:01
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            int x1 = 3;
            int x2 = 5;
            int x3 = 0;
            Add(x1, x2,ref x3);
            Console.WriteLine(x3);
        }
        static void Add(int x1,int x2,ref int x3) //x3引用传递,和主函数x3共用一个内存
        {
            x3 = x1 + x2;
        }
    }
}

可以看到,在上面使用ref的引用传递中,必须在主函数中给x3赋初值才可以使用int x3 = 0;但是实际上我们仅仅是想要x3返回的值,并不需要初值,由此因此out参数。在out参数使用中,只需要对x3初始化,不需要给其赋初值。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            int x1 = 3;
            int x2 = 5;
            int x3;   //仅仅需要初始化
            Add(x1, x2,out x3);
            Console.WriteLine(x3);
        }
        static void Add(int x1,int x2,out int x3)
        {
            x3 = x1 + x2;
        }
    }
}

上面就是out与ref的区别。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!