c# - yield return 除了 IEnumerable 之外还有其他用途吗?
问题描述
C#yield return
有什么用处IEnumerables
吗?例如,是否可以在不使用多线程的情况下实现协程?
解决方案
你的问题
C# 的 yield return 在 IEnumerables 之外是否有用
答案是否定的,您可以通过yield
文档看到这一点
在语句中使用 yield 上下文关键字时,表明它出现的方法、运算符或 get 访问器是迭代器。当您为自定义集合类型实现 IEnumerable 和 IEnumerator 模式时,使用 yield 定义迭代器无需显式的额外类(保存枚举状态的类,请参见 IEnumerator 示例)。
迭代器方法和获取访问器
迭代器的声明必须满足以下要求:
>>>返回类型必须是 IEnumerable、IEnumerable、IEnumerator 或 IEnumerator <<<
推荐阅读
- javascript - 映射 if 语句,如果每 3 个包含这个
- smtp - OJS 3.0.1 不发送任何电子邮件
- laravel - Laravel如何加载相关表的特定列?
- android - Android XML 错误
- python - 如何使我的基本员工类能够即时计算年龄
- node.js - 新月到来时如何创建新文件夹并在其中写入新日志?
- android - 选择任何选项卡后,react-native-router-flux 选项卡在按下时不起作用
- sql - 如何在 PL/SQL 的一个游标中返回两个 SQL 查询的结果?
- python - inplace ==False 是创建副本还是引用相同的数据集?
- c# - 如何在嵌套操作方法调用 WebApi 中从验证中跳过自定义属性