| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
ページの作成:「==MFC コレクション== ===2つのコレクションクラス=== MFC のコレクション クラスでは、2 種類のコレクション クラスがある。 #…」
==MFC コレクション==

===2つのコレクションクラス===
MFC のコレクション クラスでは、2 種類のコレクション クラスがある。
#C++ テンプレートから作成したコレクション クラス
#テンプレートで作成されていないコレクション クラス

'''独自のデータ型のためにタイプ セーフな (型が保証された) コレクション クラスを新規作成する場合は、テンプレート ベースのクラスの使用を推奨'''

===コレクション クラスの基本形===
{|class="wikitable"
!コレクションクラス
!内容
|-
|リスト
|要素を順番に並べたインデックスのないリスト。方向のリンク リストとして実装されます。先頭 と 末尾 があり、リストの先頭または末尾の要素の追加や削除、または中間の要素の挿入と削除を高速で行うことができる
|-
|配列
|オブジェクトを順番に並べた、整数インデックス付きの配列です。サイズを動的に変更できます。
|-
|マップ(ディクショナリ)
|キー オブジェクトと値オブジェクトを対応付ける
|-
|}

===テンプレート ベースのコレクション クラス===
*任意の型のオブジェクトを含むタイプ セーフなコレクションを実装する最も簡単な方法は、MFC のテンプレート ベースのクラスを使用する

{|class="wikitable"
!コレクションの内容
! 配列
! リスト
! マップ
|-
|任意の型のオブジェクトのコレクション
|CArray
| CList
| CMap
|-
|任意の型のオブジェクトを指すポインタのコレクション
| CTypedPtrArray
| CTypedPtrList
| CTypedPtrMap
|-
|}


===テンプレート ベースでないコレクション クラス===
*コレクションを新規作成する場合は、テンプレート ベースのクラスを推奨
{|class="wikitable"
!配列
!リスト
!マップ
|-
|CObArray
| CObList
| CMapPtrToWord
|-
|CByteArray
| CPtrList
| CMapPtrToPtr
|-
|CDWordArray
| CStringList
| CMapStringToOb
|-
|CPtrArray
|
|CMapStringToPtr
|-
|CStringArray
|
|CMapStringToString
|-
|CWordArray
|
| CMapWordToOb
|-
|CUIntArray
|
| CMapWordToPtr
|-

案内メニュー