WEB开发网
开发学院软件开发C语言 《C#3.0 in a Nutshell,3rd Edition》之C#3.0和.n... 阅读

《C#3.0 in a Nutshell,3rd Edition》之C#3.0和.net3.5基本介绍篇

 2009-05-12 08:26:38 来源:WEB开发网   
核心提示: g.隐式类型数组(Implicitlytypedarrays)这个跟隐式类型变量定义差不多,只是她是数组,《C#3.0 in a Nutshell,3rd Edition》之C#3.0和.net3.5基本介绍篇(5),例如:vardudes=new[]{new{Name="Bob

g.隐式类型数组(Implicitly typed arrays)

这个跟隐式类型变量定义差不多,只是她是数组。

例如: var dudes = new[]
{
   new { Name = "Bob", Age = 20 },
   new { Name = "Rob", Age = 30 }
};
 

h.自动属性(Automatic properties)

又一个语法糖(syntactic sugar),为了我们这些代码工人省力而做的。

例如:

public class Stock
{
 // C# 3.0:
              public decimal X { get; set; }
 
 // C# 2.0:
              private decimal y;
              public decimal Y
              {
                get { return y; }
                set { y = value; }
              }
}

I.部分方法(Partial methods)

这用处就是我们一个方法里可能需要调用另外一个未定义或定义好的方法,她可能暂时用不上。部分方法就是为她设计的。

例如:

partial class PaymentForm
{
partial void ValidatePayment (decimal amount);//部分方法的申明
}
 ///部分方法的定义
partial class PaymentForm
{
partial void ValidatePayment (decimal amount)
{
if (amount > 100)
}
}
///调用
Static void Main()
{
PaymentForm form=new PaymentFrom();
Form.ValidatePayMent(5.3);///如果没有定义上面的方法,也不会报错。
}

j.表达树(Expression trees)

这个不多说了,以后会说到。

例如:

string[] names = { "Tom", "Dick", "Harry" };
IEnumerable<string> filteredNames =                // Include only names
 Enumerable.Where (names, n => n.Length >= 4);    // of >= 4 characters.

以上都c#3.0新出的特性,行内都说是语法糖。呵呵!以后的文章会详细说这些东西的。

后记

本人学习中,错误难免,敬请指教,谢谢!

上一页  1 2 3 4 5 

Tags:in Nutshell rd

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接