ドキュメントとビューの初期化と後処理
ドキュメントとビューの初期化とクリーンアップには、次のガイドラインを使用します。
MFC フレームワークによって、ドキュメントとビューは初期化されます。プログラマは、それらに追加するすべてのデータを初期化します。
ドキュメントとビューを閉じると、フレームワークによってクリーンアップされます。プログラマは、これらのドキュメントとビューのメンバー関数内からヒープに割り当てたメモリの割り当てを解除する必要があります。
Note
アプリケーション全体の初期化は、CWinApp
クラスの InitInstance メンバー関数のオーバーライドで行うのが最適であり、アプリケーション全体のクリーンアップは、ExitInstance の CWinApp
メンバー関数のオーバーライドで行うのが最適であることを思い出してください。
MDI アプリケーションのドキュメント (およびそのフレーム ウィンドウとビュー) のライフ サイクルは、次のとおりです。
動的作成中に、ドキュメント コンストラクターが呼び出されます。
新しいドキュメントごとに、ドキュメントの OnNewDocument または OnOpenDocument が呼び出されます。
ユーザーは、ドキュメントのライフタイム全体にわたってドキュメントを操作します。 通常、これは、データの選択や編集など、ユーザーがビューを介してドキュメント データを操作することによって行われます。 ビューは、保存や他のビューの更新のために、ドキュメントに変更を渡します。 この期間中は、ドキュメントとビューの両方でコマンドが処理される可能性があります。
フレームワークは、DeleteContents を呼び出して、ドキュメントに固有のデータを削除します。
ドキュメントのデストラクターが呼び出されます。
SDI アプリケーションでは、ドキュメントが最初に作成されるときに、手順 1. が 1 回実行されます。 その後、新しいドキュメントが開かれるたびに、手順 2. から 4. が繰り返し実行されます。 新しいドキュメントは、既存のドキュメント オブジェクトを再利用します。 最後に、アプリケーションが終了すると、手順 5. が実行されます。