前のページ次のページ上に戻るホーム SophiaFramework 2.2
SFUList
リストを表す抽象基底クラスです。
#include <SFUList.hpp>
class SFUList : public SFUCollection;
typedef SFUList&          SFUListRef;
typedef SFUList*          SFUListPtr;
typedef SFUList**         SFUListHandle;
typedef const SFUList     ConstSFUList;
typedef const SFUList&    ConstSFUListRef;
typedef const SFUList*    ConstSFUListPtr;
typedef const SFUList**   ConstSFUListHandle;

継承図

SFUList クラスの継承図

解説

SFUList はリストを表す抽象基底クラスです。 派生クラスで実装されるべき関数を宣言しています。

参照

SFUCollection | SFULinkedList | SFUWList | SFUWLinkedList

メンバ

コンストラクタ/デストラクタ
public
SFUList SFUList クラスのコンストラクタです。
public
~SFUList SFUList クラスのデストラクタです。
パブリック関数
public
Append リストに要素を追加します。
public
Clear (SFUCollection から継承) コレクションの要素をすべて削除します。
public
ElementAt 要素を取得します。
public
Empty (SFUCollection から継承) コレクションが空であるか判定します。
public
GetIterator イテレータを返します。
public
GetSize リストの要素数を返します。
public
IndexOf リストの先頭から要素を検索してそのインデックスを返します。
public
Insert リストに要素を挿入します。
public
LastIndexOf リストの末尾から要素を検索してそのインデックスを返します。
public
Remove 要素を削除します。
public
Replace 要素を置換します。
public
SetSize リストの要素数を設定します。
public
operator[] リストの要素を取得/設定します。
プロテクト関数
protected
static
Equal (SFUCollection から継承)
EqualSPP (SFUCollection から継承) コレクションの要素を比較する関数です。

SFUList::SFUList
SFUList クラスのコンストラクタです。
[ public ]
SFUList(Void);

SFUList::~SFUList
SFUList クラスのデストラクタです。
[ public, virtual ]
~SFUList(Void);

解説

SFUList のデストラクタの実装は空であり、 派生クラスによりオーバライドされます。


SFUList::Append
リストに要素を追加します。
[ public, pure-virtual ]
Bool Append(
    ConstVoidPtr elem   // 追加する要素
);

戻り値

要素の追加に成功すると TRUE を返します。

参照

SFUList::Insert


SFUList::ElementAt
要素を取得します。
[ public, pure-virtual, const ]
ConstVoidPtr ElementAt(
    UIntN index   // 要素のインデックス
);
[ public, pure-virtual ]
VoidPtr ElementAt(
    UIntN index   // 要素のインデックス
);

参照

SFUList::operator[]


SFUList::GetIterator
イテレータを返します。
[ public, pure-virtual ]
SFUIterator GetIterator(Void);
[ public, pure-virtual, const ]
SFUConstIterator GetIterator(Void);

使用例

次の例ではリスト内の数値の合計を計算しています。

SFULinkedList list();
list.Append((VoidPtr) 100);
list.Append((VoidPtr) 200);
list.Append((VoidPtr) 300);

SFUConstIterator it = list.GetIterator();
SInt32 sum = 0;
while (it.HasNext()) {
    sum += (SInt32) it.Next();
}

参照

SFUIterator


SFUList::GetSize
リストの要素数を返します。
[ public, pure-virtual, const ]
UIntN GetSize(Void);

参照

SFUList::SetSize


SFUList::IndexOf
リストの先頭から要素を検索してそのインデックスを返します。
[ public, pure-virtual ]
SIntN IndexOf(
    ConstVoidPtr elem       // 検索する要素
    EqualSPP equal = NULL   // 比較関数
);

戻り値

要素が見つかればその要素のインデックスを返します。 見つからなければ -1 を返します。

参照

SFUCollection::EqualSPP | SFUList::LastIndexOf


SFUList::Insert
リストに要素を挿入します。
[ public, pure-virtual ]
Bool Insert(
    UIntN index         // 挿入位置のインデックス
    ConstVoidPtr elem   // 挿入する要素
);

戻り値

挿入に成功すると TRUE を返し、失敗すると FALSE を返します。

参照

SFUList::Append


SFUList::LastIndexOf
リストの末尾から要素を検索してそのインデックスを返します。
[ public, pure-virtual ]
SIntN LastIndexOf(
    ConstVoidPtr elem       // 検索する要素
    EqualSPP equal = NULL   // 比較関数
);

戻り値

要素が見つかればその要素のインデックスを返します。 見つからなければ -1 を返します。

参照

SFUCollection::EqualSPP | SFUList::IndexOf


SFUList::Remove
要素を削除します。
[ public, pure-virtual ]
VoidPtr Remove(
    UIntN index   // 削除する要素のインデックス
);

戻り値

削除前の要素を返します。

参照

SFUList::Replace | SFUList::operator[]


SFUList::Replace
要素を置換します。
[ public, pure-virtual ]
VoidPtr Replace(
    UIntN index         // インデックス
    ConstVoidPtr elem   // 要素
);

戻り値

以前の要素が返されます。

参照

SFUList::operator[]


SFUList::SetSize
リストの要素数を設定します。
[ public, pure-virtual ]
Bool SetSize(
    UIntN size   // 設定する要素数
);

戻り値

要素数の設定に成功すると TRUE を返し、 失敗すると FALSE を返します。

参照

SFUList::GetSize


SFUList::operator[]
リストの要素を取得/設定します。
[ public, pure-virtual, const ]
ConstVoidPtr & operator[](
    SIntN index   // 要素のインデックス
);
[ public, pure-virtual ]
VoidPtr & operator[](
    SIntN index   // 要素のインデックス
);

参照

SFUList::ElementAt | SFUList::Replace