首页 > 解决方案 > IEnumerable 合同,我应该检查 GetEnumerator 返回 null 吗?

问题描述

假设GetEnumerator()总是返回不为空是否安全?

标签: c#ienumerable

解决方案


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


推荐阅读