![]() ![]() ![]()
|
SophiaFramework 2.1 |
#include <SFUIterator.hpp>
class SFUIterator : virtual public SFUConstIterator;
typedef SFUIterator& SFUIteratorRef; typedef SFUIterator* SFUIteratorPtr; typedef SFUIterator** SFUIteratorHandle; typedef const SFUIterator ConstSFUIterator; typedef const SFUIterator& ConstSFUIteratorRef; typedef const SFUIterator* ConstSFUIteratorPtr; typedef const SFUIterator** ConstSFUIteratorHandle;
SFUIterator は単方向のイテレータを表します。
| コンストラクタ/デストラクタ | ||
|---|---|---|
| public |
SFUIterator | SFUIterator クラスのコンストラクタです。 |
| パブリック関数 | ||
|---|---|---|
| public |
End (SFUConstIterator から継承) | イテレータの終端に達したかを判定します。 |
| public |
Get | 現在位置の要素を取得します。 |
| public |
HasNext (SFUConstIterator から継承) | 次の位置に要素が存在するか調べます。 |
| public |
Insert | 現在位置に要素を挿入します。 |
| public |
IsValid (SFUConstIterator から継承) | イテレータが有効であるか調べます。 |
| public |
Next (SFUConstIterator から継承) | 現在位置を進めます。 |
| public |
Remove | 現在位置の要素を削除します。 |
| public |
Replace | 現在位置の要素を置換します。 |
| public |
operator * | 現在位置の要素を取得/設定します。 |
| public |
operator++ | 現在位置を進めます。 |
| public |
operator= | イテレータをコピーします。 |
| プロテクト変数 | ||
|---|---|---|
| protected |
_body (SFUConstIterator から継承) | イテレータ モデルです。 |
[ public ]
SFUIterator(
SFUIteratorRawPtr body // イテレータ モデル
);
[ public ]
SFUIterator(
ConstSFUIteratorRef src // コピー元のイテレータ
);
コンテナを実装するクラスは、 イテレータ モデルを実装して SFUIterator コンストラクタに提供することで 簡単にイテレータを実装できます。
コンストラクタに渡されたイテレータ モデルのポインタは、 イテレータが破棄されるときに 自動的に解放されます。
[ public, const ] VoidPtr Get(Void);
現在位置がイテレータの終端に位置する場合やイテレータが無効な場合、 この関数を呼び出すとエラーになる可能性があります。
[ public ] Bool Insert( ConstVoidPtr data // 挿入する要素 );
挿入に成功すると TRUE を返します。 失敗すると FALSE を返します。
[ public ] VoidPtr Remove(Void);
削除した要素を返します。
元になるコンテナの種類によっては、 この関数はサポートされません。 たとえば SFUHashMap のイテレータはこの関数をサポートしていません。
[ public ] Void Replace( ConstVoidPtr data // 新しく設定する要素 );
[ public ] SFUIteratorRef operator=( ConstSFUIteratorRef rhs // コピー元のイテレータ );
イテレータをコピーすると、 通常は元のイテレータの現在位置を引き継ぎます。
[ public ] SFUIteratorRef operator++(Void);
[ public ] ConstSFUIterator operator++( SIntN dummy // 後置演算子を意味する引数 );
[ public, const ] ConstVoidPtr operator *(Void);
[ public ] VoidPtr & operator *(Void);
この演算子は、通常は Get() 関数の簡易記法です。
| Copyright(C) 2003 Sophia Cradle Inc., All Rights Reserved. |
![]() ![]() ![]()
|