System::Collections::Generic::IEnumerator class
コンテンツ
[
隠れる
]IEnumerator class
列挙子のインターフェイスで、いくつかの要素を反復処理するために使用できます。このクラスのオブジェクトは、System::MakeObject() 関数を使用してのみ割り当てるべきです。スタック上や operator new を使用してこの型のインスタンスを作成しないでください。そうすると実行時エラーやアサーション障害が発生します。このクラスは常に System::SmartPtr ポインタでラップし、そのポインタを関数への引数として使用してください。
template<typename T>class IEnumerator : public virtual System::IDisposable,
public System::Details::EnumeratorBasedIterator<T>,
protected System::Details::IteratorPointerUpdater<T, false>
| パラメーター | 説明 |
|---|---|
| T | 要素型。 |
メソッド
| メソッド | 説明 |
|---|---|
| AsVirtualizedIterator() | VirtualizedIterator クラスで使用されるイテレータを準備します。 |
| CloneIterator() const override | 現在のイテレータをクローンします。 |
| virtual Current() const | 現在の要素を取得します。 |
| virtual get_Current() const | 現在の要素を取得します。 |
| IEnumerator() | |
| IncrementIterator() override | イテレータを 1 ステップ前進させます。 |
| InitializeIterator() override | 最初の MoveNext() 呼び出しを行い、VirtualizedIterator で使用される列挙子オブジェクトを準備します。 |
| MarkOwnedByVirtualizedIterator() | 仮想化イテレータが所有する列挙子にマークを付けます。 |
| virtual MoveNext() | 列挙子を次の要素へ移動します。以前に要素が参照されていない場合、利用可能な最初の要素を参照に設定します。コンテナの末尾に達した場合は何もしません。 |
| virtual Reset() | 列挙子を最初の要素の前の位置にリセットします。 |
| virtual ~IEnumerator() |
Typedefs
| 型定義 | 説明 |
|---|---|
| ValueType | 値型です。 |
備考
#include <system/collections/list.h>
#include <system/smart_ptr.h>
using namespace System;
using namespace System::Collections::Generic;
int main()
{
// List クラスのインスタンスを作成します。
auto collection = MakeObject<List<int>>();
// リストを埋めます。
collection->Add(1);
collection->Add(2);
collection->Add(3);
// リストの列挙子を取得します。
auto enumerator = collection->GetEnumerator();
while (enumerator->MoveNext())
{
// 現在の要素を取得して表示します。
std::cout << enumerator->get_Current() << ' ';
}
// 列挙子をリセットします。
enumerator->Reset();
return 0;
}
/*
This code example produces the following output:
1 2 3
*/
参照
- Class IDisposable
- Namespace System::Collections::Generic
- Library Aspose.Page for C++