IEnumerable合同,我应该检查GetEnumerator返回null吗?

时间:2018-06-28 08:01:33

标签: c# ienumerable

可以安全地假设GetEnumerator()总是返回不为null的情况吗?

1 个答案:

答案 0 :(得分:5)

是的,通常可以放心地假设。如果GetEnumerator返回null,则可以认为这是实现中的错误。为foreach循环生成的IL也不执行检查。因此,负担就在IEnumerable上,而不是消费者上。