为什么默认不使用双括号?

波尔

为什么编译:

return default(T);

但这不是:

return default((T));

完整的方法是

public static T PenultimateOrDefault<T>(this IEnumerable<T> items)
{
    if (items.Count() >= 2)
        return items.ElementAt(items.Count() - 2);
    else
        return default(T);
}

的错误default((T))

; expected
Invalid expression term ')'
Type expected

因此,看起来解析器被双括号弄混了。

乔恩·斯基特

好吧,这不是指定语言的方式。

重要的是要知道这default就像typeof-它们是运算符1,而不是方法调用。这不像类型的名称是一个参数-它是一个操作数,并且该操作数应该只是类型名。

C#5规范的7.6.13节显示了默认值表达式的构造:

默认值表达式:
default ( 类型 )

其中type只是类型或类型参数的名称。使用泛型参数或声明变量时,不再可以在此处用括号括起来:

(string) x = ""; // Invalid
var x = new List<(string)>(); // Invalid

1在规范中从未将其指定为“默认运算符”;始终是“默认值表达式”-但实际上,它在所有有意义的意义上都是一个运算符,并且在优先级表中与其他运算符一起列出。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么默认不能使用双括号?

来自分类Dev

为什么在AugularJS中对ng-src使用双括号?

来自分类Dev

为什么使用双括号“ [[”检查通配符匹配文件是否存在而单括号“ [”有效?

来自分类Dev

为什么我的动作视图方法使用括号而不是不使用括号?

来自分类Dev

为什么不使用Java 8中的默认构造函数?

来自分类Dev

为什么FreezeGun不使用SQLAlchemy默认值?

来自分类Dev

为什么熊猫不使用默认的python'and'和'or'?

来自分类Dev

为什么使用std :: initializer_list的构造函数不喜欢使用双花括号语法

来自分类Dev

为什么我需要在RegEx中使用双花括号?

来自分类Dev

为什么SQL生成器在where子句中使用双括号?

来自分类Dev

为什么很多 BST 函数返回根而不使用双指针?

来自分类Dev

为什么在括号上使用花括号?

来自分类Dev

为什么雄辩的模型关系不使用括号,它们如何工作?

来自分类Dev

为什么POSIX的字符类中有双括号?

来自分类Dev

为什么Map的+运算符需要双括号?

来自分类Dev

为什么Map的+运算符需要双括号?

来自分类Dev

为什么我在json中有双括号

来自分类Dev

使用/不使用括号实例化默认构造函数

来自分类Dev

为什么在使用||时使用“意外的“。”” 括号中默认值的运算符

来自分类Dev

为什么默认成员值禁止使用括号列表初始化?

来自分类Dev

为什么不使用avro默认值?(使用avro-python)

来自分类Dev

为什么不使用setXXXSize()?

来自分类Dev

为什么不使用@messages?

来自分类Dev

为什么不使用UASP

来自分类Dev

为什么默认情况下C#中的事件实现不使用弱事件模式?

来自分类Dev

为什么Spring的JDBC模板不使用表的默认值

来自分类Dev

为什么默认情况下不使用gcc编译二进制文件

来自分类Dev

为什么在Ubuntu环境中,Mule-ESB不使用默认的Java密钥库?

来自分类Dev

出于好奇:为什么python3不使用__dict__作为默认的相等实现?

Related 相关文章

  1. 1

    为什么默认不能使用双括号?

  2. 2

    为什么在AugularJS中对ng-src使用双括号?

  3. 3

    为什么使用双括号“ [[”检查通配符匹配文件是否存在而单括号“ [”有效?

  4. 4

    为什么我的动作视图方法使用括号而不是不使用括号?

  5. 5

    为什么不使用Java 8中的默认构造函数?

  6. 6

    为什么FreezeGun不使用SQLAlchemy默认值?

  7. 7

    为什么熊猫不使用默认的python'and'和'or'?

  8. 8

    为什么使用std :: initializer_list的构造函数不喜欢使用双花括号语法

  9. 9

    为什么我需要在RegEx中使用双花括号?

  10. 10

    为什么SQL生成器在where子句中使用双括号?

  11. 11

    为什么很多 BST 函数返回根而不使用双指针?

  12. 12

    为什么在括号上使用花括号?

  13. 13

    为什么雄辩的模型关系不使用括号,它们如何工作?

  14. 14

    为什么POSIX的字符类中有双括号?

  15. 15

    为什么Map的+运算符需要双括号?

  16. 16

    为什么Map的+运算符需要双括号?

  17. 17

    为什么我在json中有双括号

  18. 18

    使用/不使用括号实例化默认构造函数

  19. 19

    为什么在使用||时使用“意外的“。”” 括号中默认值的运算符

  20. 20

    为什么默认成员值禁止使用括号列表初始化?

  21. 21

    为什么不使用avro默认值?(使用avro-python)

  22. 22

    为什么不使用setXXXSize()?

  23. 23

    为什么不使用@messages?

  24. 24

    为什么不使用UASP

  25. 25

    为什么默认情况下C#中的事件实现不使用弱事件模式?

  26. 26

    为什么Spring的JDBC模板不使用表的默认值

  27. 27

    为什么默认情况下不使用gcc编译二进制文件

  28. 28

    为什么在Ubuntu环境中,Mule-ESB不使用默认的Java密钥库?

  29. 29

    出于好奇:为什么python3不使用__dict__作为默认的相等实现?

热门标签

归档