【发布时间】:2017-12-19 00:59:30
【问题描述】:
我是 C# 新手,这是我的代码:
class Program {
public static IEnumerable<string> enum2() {
yield return "A";
yield return "B";
}
public static IEnumerable<string> enum1() {
enum2();
yield return "C";
enum2();
yield return "C";
}
static void Main(string[] args) {
foreach (string s in enum1()) {
Console.WriteLine(s);
}
Console.ReadLine();
}
}
预期:
A
B
C
A
B
C
但得到了:
C
C
调用跟踪是Main -> enum1() -> enum2(),但为什么yield return 在enum2() 中不起作用?
【问题讨论】:
标签: c# .net c#-2.0 yield-return