バナーをクリックすれば目次に戻ります

Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.


RWBagIterator

RWBagIterator RWIterator

形式

#include <rw/rwbag.h>
RWBag b;
RWBagIterator it(b);

説明

クラス RWBag の反復子で、RWBag のすべての要素に対する順次アクセスを可能にします。RWBag は順序を持たない要素の集合なので、その要素は特定の順序ではアクセスされません。ある項目がコレクションに N 回挿入されていれば、N 回アクセスされます。

Rogue Wave のすべての反復子と同様に、作成直後の "現在の項目" は未定義です。operator() または他の有効な操作を使用して、それを定義しなければなりません。

反復子がコレクションの終わりを超えると無効になります。さらに使用し続けると、予期できない結果をもたらします。

持続性

なし

公開コンストラクタ

RWBagIterator(const RWBag&);

RWBag の反復子を作成します。作成後の反復子の位置は不定です。

公開メンバー演算子

virtual RWCollectable*
operator()();

クラス RWIterator から再定義した演算子。反復子を次の行の項目に進め、その項目を返します。コレクションの終わりに達したら NULL を返します。

公開メンバー関数

virtual RWCollectable*
findNext(const RWCollectable* target);

クラス RWIterator から再定義した関数。オブジェクト targetisEqual である次の項目に反復子を進め、その項目を返します。ハッシュを使用してターゲットを探します。項目が見つからなかった場合は NULL を返し、反復子の位置は不定となります。

virtual RWCollectable*
key() const;

クラス RWIterator から再定義した関数。現在の反復子の位置にある項目を返します。

virtual void
reset();

クラス RWIterator から再定義した関数。反復子を開始状態にリセットします。