IEnumerator ジェネリック インターフェイスとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > IEnumerator ジェネリック インターフェイスの意味・解説 

IEnumerator ジェネリック インターフェイス

メモ : このインターフェイスは、.NET Framework version 2.0新しく追加されたものです。

ジェネリック コレクション対す単純な反復処理サポートします

名前空間: System.Collections.Generic
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Interface IEnumerator(Of
 T)
    Inherits IDisposable, IEnumerator
Dim instance As IEnumerator(Of
 T)
public interface IEnumerator<T> : IDisposable, IEnumerator
generic<typename T>
public interface class IEnumerator : IDisposable,
 IEnumerator
J# では、ジェネリックな型およびメソッド使用できますが、新規に宣言することはできません。
JScript では、ジェネリックな型およびメソッド使用できません。

型パラメータ

T

列挙するオブジェクトの型。

解説解説

IEnumerator は、すべてのジェネリック列挙子に対す基本インターフェイスです。

C# 言語foreach ステートメント (C++ の場合for eachVisual Basic の場合For Each) を使用することで列挙子の複雑さ回避できます。したがって列挙子を直接操作するではなくforeach使用お勧めます。

列挙子を使用すると、コレクション内のデータ読み取ることができますが、基になるコレクション変更することはできません。

最初に列挙子はコレクション最初要素前に配置されます。この位置で、Current未定義です。したがってCurrent の値を読み取る前に、MoveNext を呼び出してコレクション最初要素列挙子を進める必要があります

Current は、MoveNext呼び出されるまでは同じオブジェクト返しますMoveNext は、Current次の要素設定します

MoveNextコレクション末尾を過ぎると、列挙子はコレクション最後要素後ろ配置されMoveNextfalse返します列挙子がこの位置にある場合以降MoveNext呼び出してfalse返されます。MoveNext への最後呼び出しfalse返され場合は、Current未定義です。Current を、再度コレクション最初要素設定することはできません。列挙子の新しインスタンス作成する必要があります

コレクション変更されない限り列挙子は有効なままです。要素追加変更削除などの変更コレクションに対して実行されると、列挙子は回復不可能な無効状態になり、動作未定義になります

列挙子には、コレクションへの排他的なアクセスがありません。したがってコレクション列挙処理は、本質的にスレッド セーフな処理ではありません。すべての列挙処理が終わるまでコレクションロックすることにより、列挙処理でのスレッド セーフ確保できますコレクション対し複数スレッドアクセスして読み取り書き込みを行うことができるようにするには、独自に同期化実装する必要があります

System.Collections.Generic 名前空間コレクション既定実装同期されません。

実装時の注意 このインターフェイス実装するには、非ジェネリックの IEnumerator インターフェイス実装する必要がありますMoveNext メソッドReset メソッドは、T依存せず、非ジェネリック インターフェイスにのみ含まれています。Current プロパティは、両方インターフェイス含まれていますが、戻り値の型が異なります。非ジェネリックの IEnumerator.Current プロパティ明示的なインターフェイスの実装として実装ます。これにより、非ジェネリック インターフェイスコンシューマジェネリック インターフェイス使用できます

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「IEnumerator ジェネリック インターフェイス」の関連用語

IEnumerator ジェネリック インターフェイスのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



IEnumerator ジェネリック インターフェイスのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS