ドキュメントは 2 種類の方法で作成できるため、ドキュメント クラスでは両方の方法をサポートする必要があります。 第 1 の方法は、[ファイル] メニューの [新規作成] で、新しい空のドキュメントを作成することです。 この場合、CDocument クラスの OnNewDocument メンバー関数をオーバーライドして、ドキュメントを初期化します。 第 2 の方法は、[ファイル] メニューの [開く] を選択し、ファイルの内容を読み取って新しいドキュメントを作成することです。 この場合、CDocument クラスの OnOpenDocument メンバー関数をオーバーライドして、ドキュメントを初期化します。 どちらの初期化でも実質的に同じ場合は、両方のオーバーライド関数から共通のメンバー関数を呼び出してもかまいません。つまり、OnOpenDocument から OnNewDocument を呼び出し、空のドキュメントを初期化して、ドキュメントを開く操作を終了できます。
ビューは、ドキュメントの作成後に作られます。 ビューを初期化する最適なタイミングは、ドキュメント、フレーム ウィンドウ、およびビューの作成が終わったときです。 ビューを初期化するには、CView の OnInitialUpdate メンバー関数をオーバーライドします。 ドキュメントの変更のたびに再初期化や調整が必要となる場合は、OnUpdate をオーバーライドできます。