点击这里给我发消息 点击这里给我发消息

C# 2010命名和可选参数的新特性

添加时间:2012-1-18
    相关阅读: C#

核心提示:命名参数允许调用者通过提供参数的名称来为其赋值,这样参数的位置就不在重要了。可选参数允许在定义时为某些参数赋值,在调用时可以忽略这些“可选的”参数。

1.命名参数允许调用者通过提供参数的名称来为其赋值,这样参数的位置就不在重要了。可选参数允许在定义时为某些参数赋值,在调用时可以忽略这些“可选的”参数。命名参数和可选参数可以应用在方法、索引器、构造函数和委托。命名参数和可选参数与dynamic类型结合在一起使用,可以方便的访诸如Office自动化API之类的COM API。

1.1 命名参数

命名参数的语法为:

参数名称1:参数值1,参数名称2:参数值2…

例如以下代码:

以下为引用的内容:

static void Main(string[] args)
{
CreateUser(password:"adminpassword",name:"admin");
}

 

static void CreateUser(string name, string password)
{
Console.WriteLine("name:{0},password:{1}", name, password);
}

可以看到由于在调用时使用了命名参数,参数的位置就不在重要了。

1.2. 可选参数

方法、构造函数、索引器和委托的定义可以指定其参数为必选的还是可选的,在调用时必须提供必选参数,但是可以省略可选参数。

还可以使用System.Runtime.InteropServices.OptionalAttribute特性类定义可选参数,该类从1.0时代就已经包含在基类库中了。

每一个可选参数的定义都包含默认值(默认值必须是常量),如果在调用时没有指定该参数,则使用默认值。例如以下代码:

以下为引用的内容:

static void Main(string[] args)
{
CreateUser("admin","adminpassword",50);
}
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册