測試**:
using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.collections;
namespace _07迭代器
private int move = 0;
const int maxmoves = 9;
public ienumerator cross() ", move);
if (++move >= maxmoves)
yield return circle;}}
public ienumerator circle()
", move);
if (++move >= maxmoves)
yield return cross;}}
}class program
console.readkey();}}
}yield return 每次返回乙個列舉器,包含yield的方法或屬性叫做迭代快,使用迭代快,編譯器會生成乙個yield型別,movenext()方法封裝了迭代塊中的**
current屬性返回yield return 中返回的內容。這就是迭代器執行的順序。
C 列舉器和迭代器
using system using system.collections namespace study public class people ienumerable 宣告可列舉類 ienumerator ienumerable.getenumerator 實現ienumerable的geten...
C 迭代器和列舉器01
1 ienumerable 提供可列舉的能力,只有實現該介面才可以使用foreach物件迭代物件 其介面包含的方法 ienumerator getenumerator 該介面中包含實現迭代提供的值序列或者自定義值序列,然後對其進行迭代 public class test public class t...
C 學習之用迭代器實現列舉器
已經知道 主要乙個類實現了getenumerator函式就能foreach,而實現ienumerator介面只是實現 getenumerator函式的其中乙個辦法,也就說還有其他辦法實現getenumerator函式了?是的,c 2.0為我們提供了一種很簡單的方 法來實現getenumerator函...