【发布时间】:2013-07-06 14:58:26
【问题描述】:
从 yield 表达式获得的 ienumerable 可以为 null 吗?
【问题讨论】:
标签: c# ienumerable yield-return
从 yield 表达式获得的 ienumerable 可以为 null 吗?
【问题讨论】:
标签: c# ienumerable yield-return
没有。 C# 编译器将您的迭代器块转换为 iterator 实例,这是从您的方法返回的内容。这永远不会是null。
也就是说,当然可以在您的枚举中产生null 值,前提是您的可枚举的泛型类型是引用类型或可为空的类型。
【讨论】:
GetEnumerator()返回空值,所以我不确定你在说什么不能为空。
yield return 或yield break 语句的方法体在C# 规范中称为迭代器块。