文件/檢視架構的優點
若要使用 MFC 的文件/檢視架構最關鍵的優點是此架構支援相同的文件的多重檢視特別好。 (如果您不需要多個檢視,且文件/檢視虛過多的應用程式中,您可以避免使用此架構。 文件/檢視架構的替代方案。)
假設您的應用程式可讓使用者在試算表或圖表型式檢視數值型資料。 使用者可能想要同時這兩個未經處理資料,請在試算表,以及由資料形成的樞紐分析表,請參閱。 在個別的框架視窗或分隔窗格內的單一視窗中,您就會顯示這些不同的檢視。 現在假設使用者可以編輯試算表,請參閱中的資料所做的變更立即反映在圖表中。
在 MFC 中,[試算表] 檢視和 [圖表] 檢視會根據不同的 CView 衍生的類別。 這兩種檢視會與單一文件物件產生關聯。 文件儲存資料 (或可能是從資料庫中取得)。 這兩種檢視存取文件,並顯示它們從其擷取的資料。
當使用者更新其中一個檢視,來檢視物件呼叫CDocument::UpdateAllViews。 該函式會告知所有文件的檢視,每個檢視使用最新的資料,從文件自行更新。 若要在單一呼叫UpdateAllViews會同步處理不同的檢視。
這種情況下將很難沒有資料分開的程式碼檢視中,特別是當檢視儲存的資料本身。 文件/檢視,很容易。 此架構為您做了大部份的協調工作。