ここでは、MFC (Microsoft Foundation Class) フレームワークの主要クラスと、フレームワークを使用した作業を簡単にする Visual C++ のツールを紹介します。 一部のクラスは Win32 アプリケーション プログラミング インターフェイス (API: Application Programming Interface) の大部分をカプセル化します。 ドキュメント、ビュー、アプリケーション自体などのアプリケーションの概念をカプセル化するクラスもあります。 OLE の機能や ODBC や DAO によるデータへのアクセス機能をカプセル化するクラスもあります。
たとえば、Win32 のウィンドウの概念は、MFC の CWnd クラスでカプセル化されています。 つまり、CWnd という C++ クラスは、Windows のウィンドウを表す HWND ハンドルをカプセル化 ("ラップ") します。 これと同様に、CDialog クラスは Win32 のダイアログ ボックスをカプセル化します。
カプセル化とは、たとえば C++ の CWnd クラスの中で HWND 型のメンバー変数を定義し、HWND をパラメーターとする Win32 関数の呼び出しを CWnd クラスのメンバー関数にカプセルのように封じ込めるという意味です。 クラスのメンバー関数は、通常、カプセル化した Win32 関数と同じ名前が付けられています。