.net framework 4.0新增加了可选参数的支持,其实很简单,只要给参数赋个默认值就可以了
如下
static string GetStr(string s = "a", int i = 10, string r = "rrrr")
{
return s + i + r;
}
调用时,可以用如下几种方法调用
GetStr();
GetStr("abcde");
GetStr("abcde", 100);
GetStr("abcde", 100, "hjklmn");
并且,参数的顺序是不能改变的,不能跳过一个参数使用后面的参数类型,所以这样就会有个问题,如果我想调用这个方法只想用第一个和第三个参数,怎么办呢。
其实在可选参数的调用上,微软推出了命名参数,即
GetStr(s: "abcde", r: "hijklmn");
只需要将参数名称标记下来就可以了。(命名参数只能是原方法的参数名 后跟冒号“:”)
这样以后的重载就可以省很多事了。省去了大段的代码重载方法