可选参数
可选参数是 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"); //使用命名参数给两个参数赋值(可以不按照形参的顺序)