ドキュメントのデータをドキュメント クラスのメンバー変数として実装します。 たとえば、Scribble プログラムは、 CObList
型のデータ メンバーを宣言します。これは、 CObject
オブジェクトへのポインターを格納するリンク リストです。 このリストは、フリーハンドの線描画を構成するポイントの配列を格納するために使用されます。
ドキュメントのメンバー データを実装する方法は、アプリケーションの性質によって異なります。 MFC では、C++ テンプレートに基づくコレクションを含む "コレクション クラス" のグループ (配列、リスト、マップ (ディクショナリ) と、 CString
、 CRect
、 CPoint
、 CSize
、 CTime
など、さまざまな一般的なデータ型をカプセル化するクラスが提供されます。 これらのクラスの詳細については、MFC リファレンスの クラス ライブラリの概要 を 参照してください。
ドキュメントのメンバー データを定義するときは、通常、メンバー関数をドキュメント クラスに追加して、データ項目を設定および取得し、その他の便利な操作を実行します。
ビューは、作成時にビューにインストールされているドキュメントへのビューのポインターを使用して、ドキュメント オブジェクトにアクセスします。 ビューのメンバー関数でこのポインターを取得するには、 CView
メンバー関数 GetDocument
を呼び出します。 必ずこのポインターを、あなたのドキュメント型にキャストしてください。 その後、ポインターを使用してパブリック ドキュメント メンバーにアクセスできます。
頻繁なデータ転送で直接アクセスが必要な場合、またはドキュメント クラスの非パブリック メンバーを使用する場合は、ビュー クラスをドキュメント クラスのフレンド (C++ 用語) にすることができます。