ホームページ > バックエンド開発 > C++ > Foreach ループは C# でどのように機能し、どのクラスがそれを実装するのでしょうか?

Foreach ループは C# でどのように機能し、どのクラスがそれを実装するのでしょうか?

Patricia Arquette
リリース: 2025-01-10 09:55:39
オリジナル
718 人が閲覧しました

How Do Foreach Loops Work in C#, and Which Classes Implement Them?

C# の foreach ループとその実装について理解する

foreach ループを使用するクラスはどれですか?

C# の foreach ループは、IEnumerable または IEnumerable<T> を実装するクラスで頻繁に使用されます。 これには、GetEnumerator() または IEnumerator を返す IEnumerator<T> メソッドを提供するクラスが含まれます。 基本的に、これは、配列、リスト、その他のコレクションなど、ICollection または ICollection<T> を実装するすべてのクラスをカバーします。

ループの仕組み:foreach

標準の

ループ (foreach など) は機能的には次のようになります。foreach (int i in obj) { ... }

<code class="language-csharp">var tmp = obj.GetEnumerator();
int i; // C# 4.0 and earlier
while (tmp.MoveNext()) {
    int i; // C# 5.0 and later
    i = tmp.Current;
    { ... } // Loop body
}</code>
ログイン後にコピー
重要な考慮事項: 列挙子 (

) が tmp を実装する場合、それは破棄されます (IDisposable ステートメントと同様)。 usingの宣言はC#のバージョンによって異なります。 C# 5.0 以降では、ループ内で宣言されます。以前のバージョンでは、それを外部で宣言します。この区別は、匿名メソッド内で int i を使用する場合、またはループ内のラムダ式を使用する場合に重要です。i

以上がForeach ループは C# でどのように機能し、どのクラスがそれを実装するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート