巴中市城乡和住房建设局网站,刚注册在域名可以自己做网站吗,wordpress 插件设置,wordpress头像代码在很多情况下#xff0c;一个地方只允许出现一种可能的类型。C# 仍然要求你明确列出类型#xff0c;但如果目标类型“new”表达式提案被采用#xff0c;那么就不再需要这些样板代码。从表面上看#xff0c;这个特性看起来与 var 关键字恰好相反。它不是根据表达式推断出变量… 在很多情况下一个地方只允许出现一种可能的类型。C# 仍然要求你明确列出类型但如果目标类型“new”表达式提案被采用那么就不再需要这些样板代码。从表面上看这个特性看起来与 var 关键字恰好相反。它不是根据表达式推断出变量类型而是从变量推断出表达式的类型。以下是来自提案使用当前语法和建议语法的对比示例。Dictionarystring, Listint field new Dictionarystring, Listint();Dictionarystring, Listint field new();正如你所看到的当它能够从上下文中推断出类型时就不需要指定类型。对于局部变量可能没有太大用处但对于临时参数来说却很方便。XmlReader.Create(reader, new XmlReaderSettings() { IgnoreWhitespace true });XmlReader.Create(reader, new() { IgnoreWhitespace true });在上面的代码中XmlReaderSettings 类只是用于持有传给 XmlReader 的选项值。我们甚至可以说 XmlReaderSettings 的类型名称对于它所持有的重要信息来说有点”反客为主“了。这个特性另一个用武之地是不能使用 var 关键字的字段和属性。例如private readonly static object s_syncObj new();根据提案这个特性不能被用在四个地方。枚举类型并非所有枚举类型都包含常量零因此应该使用显式枚举成员。接口类型这是一个利基特性最好要明确指定类型。数组类型数组需要特殊的语法来表示长度。结构体默认构造函数它排除了所有基本类型和大多数值类型。如果你想使用这个类型的默认值可以自己写。状态目前Caller Expression Attribute 被列在C# 8 路线图中状态为“Prototype”。特性测试计划可在 GitHub 上找到。查看英文原文https://www.infoq.com/news/2019/01/c-sharp-targeted-type-new