Guf*_*ffa 13
该关键字var用于声明隐式类型.如果您对变量使用命名类型,那么除了可读性之外没有其他区别(并且意见不同,哪个更好).例:
var s = "asdf";
Run Code Online (Sandbox Code Playgroud)
给出完全相同的结果:
string s = "asdf";
Run Code Online (Sandbox Code Playgroud)
但是,如果您有未命名的类型,则必须使用var声明具有该类型的变量.例:
var o = new { s = "asdf" };
Run Code Online (Sandbox Code Playgroud)
使用命名类型没有相应的声明,因为创建的对象的类型没有名称.
该var关键字通常与LINQ和LINQ扩展方法,使用时的结果没有命名类型.例:
var result = someList.Where(x => x.Age < 10).Select(x => new { name = x.Name });
Run Code Online (Sandbox Code Playgroud)
var是一个隐式类型,string是一个显式类型,但这些声明是函数等效的
var implicitString = "hello";
string explicitString = "hello";
Run Code Online (Sandbox Code Playgroud)
只有在方法范围声明的变量才能具有隐式类型var.使用时,编译器会从赋值的右侧推断出类型.
| 归档时间: |
|
| 查看次数: |
15746 次 |
| 最近记录: |