C#关键字是伴随这.NET 3.5以后,伴随着匿名函数、LINQ而来, 由编译器帮我们推断具体的类型。总体来说,当一个变量是局部变量(不包括类级别的变量),并且在声明的时候初始化,是使用var关键字的前提。具体什么时候使用,什么时候不使用,以下是个人浅见。
1、声明匿名函数时使用var关键字
var temp = new {Name="", Category=""};
2、LINQ投影出匿名函数结果时使用var关键字
monospace; width: 100%; margin: 0em; background-color: #f0f0f0">var temp = from p in products
where p.Name =="sth"
select new {p.Name, p.Category};
3、 类型很明确时使用var关键字
var string = "" ;
var result = new List<Product>();
以上,可以很明显从等号右边推断出类型,可以考虑使用var关键字。
4、类型不明确时慎用var关键字
var result = ProductRepository.GetProducts();
以上,如果使用var关键字,在可读性上就差了一点。