次の方法で共有


ドキュメントとビューの初期化と後処理

更新 : 2007 年 11 月

ドキュメントとビューに合わせた初期化と後処理については、次のガイドラインに従ってください。

  • MFC フレームワークはドキュメントとビューを初期化します。ドキュメントとビューに追加したデータをすべて初期化してください。

  • ドキュメントとビューが閉じると、フレームワークによって後処理が行われます。ドキュメントとビューのメンバ関数でヒープに割り当てたメモリを解放してください。

h9tbs7f4.alert_note(ja-jp,VS.90).gifメモ :

ただし、アプリケーション全体の初期化は CWinApp クラスの InitInstance メンバ関数をオーバーライドして行い、アプリケーション全体の後処理は CWinApp クラスの ExitInstance メンバ関数をオーバーライドして行うことをお勧めします。

MDI アプリケーション内のドキュメント (とそのフレーム ウィンドウおよび 1 つ以上のビュー) の有効期間は、次のようになります。

  1. 動的生成時に、ドキュメントのコンストラクタが呼び出されます。

  2. 新しいドキュメントごとに、ドキュメントの OnNewDocument または OnOpenDocument が呼び出されます。

  3. ユーザーは、ドキュメントの有効期間内にドキュメントとやり取りします。一般的に、ドキュメントとのやり取りは、ユーザーが選択や編集などで、ビュー経由でドキュメント データを処理すると発生します。ビューは、保存やほかのビューの更新のために、変更をドキュメントに渡します。この間に、ドキュメントとビューは、いずれもコマンドを処理できます。

  4. フレームワークは DeleteContents を呼び出して、ドキュメントに固有のデータを削除します。

  5. ドキュメントのデストラクタが呼び出されます。

SDI アプリケーションでは、ステップ 1 は、ドキュメントが初めて作成されたときに 1 回だけ実行されます。以後、新しいドキュメントが開かれるたびに、ステップ 2 ~ 4 が繰り返し実行されます。新しいドキュメントは、既存のドキュメント オブジェクトを再使用します。最後に、アプリケーションの終了時にステップ 5 が実行されます。

さらに詳しくは次のトピックをクリックしてください

参照

概念

ドキュメント/ビュー アーキテクチャ