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

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


RWTValDlistIterator<T>

形式

#include <rw/tvdlist.h>
RWTValDlist<T> list;
RWTValDlistIterator<T> iterator(list);

注 - 標準 C++ ライブラリがない場合は、ここで説明しているインタフェースを使用してください。標準 C++ ライブラリがある場合は、クラスリファレンスの説明にあるインタフェースを使用してください。

説明

クラス RWTValDlist<T> の反復子で、二重リンクのパラメータ化されたリストのすべての要素に順次アクセスできます。各要素にはどちらの方向にも順番にアクセスできます。

すべての Rogue Wave 反復子と同様に、作成直後の "現在の項目" は未定義で、operator() か他の有効な操作によってユーザーが定義する必要があります。

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

持続性

同形

公開コンストラクタ

RWTValDlistIterator<T>(RWTValDlist<T>& c);

リスト c で使用するよう反復子を作成します。

公開メンバー演算子

RWBoolean
operator++();

反復子を次の項目に進めて TRUE を返します。コレクションの最後に達すると FALSE を返し、反復子の位置は不定となります。

RWBoolean
operator--();

反復子を 1 つ前の項目に戻して TRUE を返します。コレクションの最初に達すると FALSE を返し、反復子の位置は不定になります。

RWBoolean
operator+=(size_t n);

反復子を n 項目進めて TRUE を返します。コレクションの最後に達すると FALSE を返し、反復子の位置は不定になります。

RWBoolean
operator-=(size_t n);

反復子を n 項目戻して TRUE を返します。コレクションの最初に達すると FALSE を返し、反復子の位置は不定になります。

RWBoolean
operator()();

反復子を次の項目に進めます。次の項目の位置が有効ならば TRUE を返し、無効であれば FALSE を返します。

公開メンバー関数

RWTValDlist<T>*
container() const;

反復子を使用しているコレクションへのポインタを返します。

RWBoolean
findNext(const T& a);

項目 a と等しい最初の要素へ反復子を進めて TRUE を返します。等しい要素がなければ FALSE を返します。等しいかどうかはクラス定義の等価演算子で判定します。

RWBoolean
findNext(RWBoolean (*testFun)(const T&, void*), void*);

テスト関数 testFunTRUE を返す最初の要素に反復子を進めて TRUE を返します。そのような要素がなければ FALSE を返します。

void
insertAfterPoint(const T& a);

当該コレクション内の反復子の現在位置の直後に、値 a を挿入します。

T
key() const;

反復子の現在位置にある値を返します。反復子が無効であれば、結果は不定になります。

RWBoolean
remove();

当該コレクションから反復子の現在位置にある値を取り除きます。処理が成功すれば TRUE を、失敗すれば FALSE を返します。成功すると、反復子は取り除いた要素の直前の要素の位置に置かれます。

RWBoolean
removeNext(const T& a);

a と等しい最初の要素に反復子を進め、その要素を取り除きます。処理が成功すれば TRUE を、失敗すれば FALSE を返します。等しいかどうかは、型 T のクラス定義の等価演算子で判定します。処理が成功すると、反復子は取り除いた要素の直前の要素の位置に置かれます。

RWBoolean
removeNext(RWBoolean (*testFun)(const T&, void*), void*);

テスト関数 testFunTRUE を返す最初の要素に反復子を進めて TRUE を返し、その要素を取り除きます。処理が成功すれば TRUE を、失敗すれば FALSE を返します。成功すると、反復子は取り除いた要素の直前の要素の位置に置かれます。

void
reset();

反復子を作成直後の状態に戻します。

void
reset(RWTValDlist<T>& c);

反復子を、コレクション c について反復するよう初期状態に戻します。