C# 4.0 可选参数 和 命名参数

可选参数

   可选参数是 C# 4.0 提出来的,当我们调用方法,不给这个参数(可选参数)赋值时,它会使用我们定义的默认值

 需要注意的是:

   (1)可选参数必须位于所有必选参数的后面

   (2)可选参数必须指定一个默认值,且默认值必须是一个常量表达式,不能为变量

   (3)所有可选参数以后的参数都必须是可选参数。

命名参数

   通过命名参数调用,实参顺序可以和形参不同。

   对于简单的重载,可以使用可选参数和命名参数混合的形式来定义方法,提高代码的运行效率。

 定义:

    public class Dog
    {
        public string Name { get; set; }
        public int Age { get; set; }


        public void Say(string name = "汪汪汪",int age = 1)        //可选参数(当我们调用方法,不给这些参数赋值时,它会使用我们定义的默认值)
        {
            Console.WriteLine(name + "," + age);
        }
    }

 使用命名参数调用:

            Dog dog = new Dog();
            dog.Say();                  //全部使用默认值
            dog.Say(age: 3);            //给 age 赋值,name 使用默认值
            dog.Say(age: 3, name: "mingmingcanshu");            //使用命名参数给两个参数赋值(可以不按照形参的顺序)
原文地址:https://www.cnblogs.com/zhangchaoran/p/8795972.html