c# 冒号之命名参数

在查看ADO.NET Entity Framework中得代码生成模板时,遇到这样一句代码:

< # = Accessibility.ForType(enumType)# >   enum   < # = code.Escape(enumType)# >  :  < # = code.Escape(enumType.UnderlyingType.ClrEquivalentType, fullyQualifySystemTypes:  false )# >

 

其中:fullyQualifySystemTypes:false 当时使我疑惑,后来查阅相关资料:
这种用法是.net 4.0中得新特性,谓之命名参数。
 
在之前版本的C#中,方法定义的参数顺序必须与方法调用时的参数顺序一致,即方法Method(int i, string s)调用时就必须第一个传入int,第二个传入string,而现在,这个规矩可以被打破了。你可以自己随便什么顺序传入,这也在一定程度上提高了代码的可读性。例子:
C# code
 
    
static void Main( string [] args) { TestMethod2(s: " ojlovecd " , i: 26 ); } static void TestMethod2( int i, string s) { Console.WriteLine( " i:{0},s:{1} " , i, s); }

转载于:https://www.cnblogs.com/daoyuly/archive/2011/08/30/2159923.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值