-2
我在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()
中不起作用?