CList クラス
更新 : 2007 年 11 月
オブジェクト (重複あり) を順に並べたリストをサポートします。このリストには、シーケンシャル アクセスまたは値指定によるアクセスを行うことができます。
template< class TYPE, class ARG_TYPE = const TYPE& >
class CList : public CObject
パラメータ
TYPE
リストに格納されるオブジェクトの型。ARG*_*TYPE
リストに格納されているオブジェクトを参照するときに使う型。通常は TYPE 型の参照です。
解説
CList リストは、双方向リンク リストのように作用します。
POSITION 型の変数はリストのキーとして使用されます。POSITION 変数を反復子として使うと、リストを順番にアクセスできます。ブックマークとして使うと、リスト内の位置を保持できます。この位置は、インデックスとは異なります。
リストの先頭、末尾、および POSITION で示す位置への要素の挿入は、高速に行われます。値またはインデックスで要素を検索するときは、シーケンシャル サーチが行われます。この検索は、リストが長いほど低速になります。
リスト内の要素を個別にダンプするときは、ダンプ コンテキストの深さを 1 以上に設定します。
このクラスの一部のメンバ関数は、グローバルなヘルパー関数を呼び出します。したがって、CList クラスの主な用途に合わせて、これらのヘルパー関数をカスタマイズする必要があります。「MFC マクロとグローバル」の「コレクション クラスのヘルパー」を参照してください。
CList の使い方の詳細については、「コレクション クラス」を参照してください。
使用例
// CList is a template class that takes two template arguments.
// The first argument is type stored internally by the list, the
// second argument is the type used in the arguments for the
// CList methods.
// This code defines a list of ints.
CList<int,int> myIntList;
// This code defines a list of CStrings
CList<CString,CString&> myStringList;
// This code defines a list of MYTYPEs,
// NOTE: MYTYPE could be any struct, class or type definition
CList<MYTYPE,MYTYPE&> myTypeList;
必要条件
ヘッダー : afxtempl.h
参照
処理手順
COLLECT サンプル : MFC コレクション クラスの例