有关 C# 命名参数和可选参数

有关 C# 命名参数和可选参数

#1、命名参数:

所谓“命名参数 ( Named Arguments )”,是指方法中定义了一些“有名字”的参数。

给方法参数命名之后,在调用方法时就可以直接根据参数名字传送实参,不再像原来一样需要依据方法定义时的参数顺序传送。

假设有一下的方法:

static void SomeMethod ( int x1, int x2, int y1, int y2 )

{  ..........  }

在 .net 4.0 中可以这样调用方法:

SomeMethod ( 100, 200, 300, 400 );           // 传统方式,严格按照参数定义的顺序传送实参

SomeMethod ( x1: 100, y1: 300, x2: 200, y2: 400 );   // 命名方式,次序无关紧要

SomeMethod ( 100, y2: 400, x2: 200, y1: 300 );     // 混合方式

以“混合方式”调用方法时,位于命名参数前面的参数称为“位置参数(Positional Arguments)”,是不容随便更换位置的。因此,命名参数“群”一定集中位于方法调用参数列表的后半部分。

#2、可选参数:

所谓“可选参数(Optional Arguments)”,是指给方法的特定参数指定的默认值,在调用方法时,可以省略掉这些参数。

例如,假设有以下方法:

static void Test ( int required, string optionalString = "Default Value" )

{  ..........  }

则一下两种调用方法都是可执行的:

Test ( 100 );          //optionalString 参数拥有默认参数值 “Default Value”

Test ( 100, "New Value" );     //optionalString  参数的值为 “New Value”

上一篇:蓝桥杯之K好数


下一篇:mybatis3.1-[topic-18-20]-_映射文件_参数处理_单个参数&多个参数&命名参数 _POJO&Map&TO 三种方式及举例