// 明示的な使い方IEnumerator<MyType> iter = list.GetEnumerator();while (iter.MoveNext())    Console.WriteLine(iter.Current);// 暗黙的な使い方foreach (MyType value in list)    Console.WriteLine(value);C# 2.0およびVB.NET 11は反復子の形でジェネレータ (generator) をサポートする。ジェネレータはIEnumeratorまたはIEnumerableを返すよう宣言されたメソッドであるが、オブジェクトインスタンスを返す代わりに要素のシーケンスを生成するためのyield returnステートメントを使用する。yieldステートメントを用いて記述されたジェネレータはコンパイラによって、適切なインターフェイスを実装する新しいクラスに変換される。ただし、ジェネレータ（反復子）はIEnumerator.Reset()メソッドをサポートしない。// 反復子の記述例。static IEnumerable<int> MyIteratorMethod() {    yield return 1;    yield return -1;    yield return 0;    yield break;}IEnumerable<int> elements = MyIteratorMethod(); // この時点では、まだメソッドの本体は実行されない。// 列挙によりメソッドの本体が順次「遅延実行」される。foreach (int element in elements)    Console.WriteLine(element);
C#、VB.NETなどの.NET Frameworkに準拠する.NET言語において、反復子 (iterator) は値の順序付き列を産出 (yield) する文のブロック（狭義ではyield文を含むメソッド）を意味する。これを反復子ブロック (iterator block) とも呼ぶ。また、コレクションに対する列挙操作を行なう機能を提供するための媒介インターフェイスを列挙子 (enumerator) と呼び、IEnumeratorインターフェイスによって表す。IEnumeratorインターフェイスはMoveNext()メソッドを定義しており、このメソッドを使用することによりコレクション中の次の要素に進むと同時に、コレクションの末尾に到達するかどうかを判定する。Currentプロパティを使用することによってコレクション内部の要素を取得する。コレクションの最初の要素に戻す方法としてReset()メソッドを使用する。列挙子を得るには通例IEnumerableインターフェイスを実装するオブジェクトのGetEnumerator()メソッドを呼び出す。一般的にコレクション クラスはこのIEnumerableインターフェイスを実装する。GetEnumerator()を明示的に呼び出さず、foreach文を代わりに使用することもできる（GetEnumerator()はコンパイラによって暗黙的に呼び出される）。IEnumeratorおよびIEnumerableインターフェイスは、.NET 2.0でジェネリック版 (System.Collections.Generic) として拡張された。
Rubyでは、Arrayなどのコンテナオブジェクトが、eachなどのイテレートするメソッドを持っている内部イテレータである。メソッド呼出しの直後に { ... } という書式で「ブロック」を書くと、その中の手続きが繰返し実行される。「ブロック付きメソッド」（あるいは、「ブロック付きメソッド呼び出し」）と言い、これをイテレータとも呼ぶ。ブロックを付けて呼ばれたメソッド中でyieldを実行すると、ブロックの中の手続きが実行される。Pythonのジェネレータと同じyieldというキーワードで、コードの見た目も似たものになるが、具体的な働きは全く異なることに注意。class MyObj  def my123    yield 1    yield 2    yield 3  endendarr = ["a", "b", "c"]arr.each do |x|  p xendobj = MyObj.newobj.my123 do |x|  p xend
PHPではIteratorインターフェイスを実装することにより、任意のイテレータを定義することができ、foreach、while といったキーワードでイテレータを簡単に利用することができる。また、大抵のオブジェクトにはあらかじめイテレータが実装されている。# foreachを使った例。配列・連想配列・オブジェクト等に対し全く同じように使用できる。foreach ( $elements as $key=>$value ){    print $key . "=" . $value . " \n";}
Perlには、foreach、each といった繰り返しのキーワードがある。他に、Tie機能 (変数操作のオーバーロード) でユーザーデータに対するイテレータを定義できる。# foreachを使った例。配列・リストに対する反復foreach my $element(@array){    print $element, "\n";}# eachを使った例。ハッシュ(連想配列)に対する反復while(my($key, $value) = each %hash){    print "$key=$value\n";}
Javaでは、Iteratorインターフェイス族を実装するオブジェクトが外部イテレータとなる。Iterator it = list.iterator();while (it.hasNext()){    Object val = it.next();    System.out.println(val.toString());}
Delphiでは、バージョン2005よりfor-in構文によるイテレータがある。ユーザーによるイテレータはMoveNextメソッドやCurrentプロパティを任意のクラス等に実装することで定義でき、型に厳格なPascal系言語ながらこれらを実装するだけでfor-inにより認識されるというダックタイピングにも似た仕組みとなっている。for item in items do  Writeln(item);
東映アニメーションで初めて美少女ゲームを取り扱った作品である。2002年1月30日から同年3月27日までフジテレビと関西テレビで全13話が放送されたほか、後日談としてDVD全巻購入者特典の特別編1話が制作されている。映像フォーマットはNTSCアナログ放送。京都アニメーションで再アニメ化されたことから、「フジKanon」と呼ばれることがある。キャラクターデザインは原作独特の絵柄を大幅に変えることなく、かつアニメーション風に表現したものとなっている。実体を持たない「魔物」を怪物のように描写した。音楽は担当の神津裕之による本作オリジナル楽曲と原作楽曲を神津がアレンジしたものが混在する。オリジナル楽曲は主に本作オリジナルの主題歌アレンジと、メインヒロイン5人のオリジナルイメージ曲で構成されている。原作の歌唱曲は最終回の挿入歌・エンディングのみ登場する。オープニング映像は1話と最終回のみフルで、それ以外の回ではアバン映像にシナリオの一部を読み上げるパターンから、相沢祐一をはじめとする主要キャラクターに1人ずつズームしていく構成である。シナリオは原作のエピソードができるだけ詰め込まれ、かつ一本の話としてまとめ上げられている。メインとなる月宮あゆ、水瀬名雪シナリオは、あゆのシナリオを下地にしながら名雪の心情や成長を描く構成になっている。また、その他のヒロインについても各シナリオにおけるサブキャラクターとの交流が主軸とされ、特にラスト部分で原作と異なる表現・展開がなされた。特別編の14話「風花」（かざはな、テレビ未放送）は、最終回のラストシーンの補足と各ヒロインのその後が描かれたオリジナルエピソードで、特典にして重要な役割を持つエピローグである。この作品はDVD全巻購入者特典であり、DVD-BOXには収録されていない。作中、「CLANNAD」の文字がプリントされたパーカーを登場人物の北川潤が着ているシーンがあり、当時開発中であったCLANNADの存在を明らかにしていた。