3
当我说匿名类型声明C#匿名类型
VAR SOMETYPE =新的{名称= “乔恩 碟”,年龄= 10};
然而关键字
var is implicitly typed
但是当我打印
Response.Write(someType.GetType().Name);
它产生这是什么符号<>
涉及?
当我说匿名类型声明C#匿名类型
VAR SOMETYPE =新的{名称= “乔恩 碟”,年龄= 10};
然而关键字
var is implicitly typed
但是当我打印
Response.Write(someType.GetType().Name);
它产生这是什么符号<>
涉及?
编译器生成一个普通类的匿名类型,并选择一个名称,在IL有效,但不是在C#防止名称冲突与你的类型名称。
它是类型名称的一部分。它并不意味着任何特定的内容,而是使用一系列不可能与任何人类编写的代码相冲突的字符序列。
虽然类型*逻辑*没有名称,但元数据格式不允许无名类型,所以我们只需选择一个“不可能”的名称。你会注意到我们为匿名*函数*做了同样的事情。如果你很聪明,你可以得到一个匿名函数的方法信息并询问它的名字;你会得到一个类似的“不可能”的名字。我们还为闭包,迭代器块的特殊字段等生成不可能的名称。 – 2009-12-14 18:53:03
我希望你在编译器开发团队@Microsoft.Right? – Russel 2009-12-14 19:04:06
尝试点击他的名字。 – 2009-12-14 19:28:38