MFC Classes
This section provides detailed documentation for the Microsoft Foundation Classes (MFC) library, a C++ framework that simplifies Windows application development.
On this page:
Introduction
MFC is a powerful object-oriented framework that abstracts many Windows programming complexities. It provides a set of C++ classes that encapsulate Windows objects such as windows, menus, dialog boxes, and device contexts. By using MFC, developers can build robust and feature-rich Windows applications more efficiently.
Class Hierarchy
Understanding the MFC class hierarchy is crucial for navigating and utilizing the library effectively. The base class for almost all MFC objects is CObject, which provides essential services like serialization and run-time class information. From CObject, other major branches of the hierarchy emerge, including classes for collections (e.g., CArray, CList, CMap), windows (e.g., CWnd), documents and views (e.g., CDocument, CView), and OLE/COM support.
A comprehensive graphical representation of the MFC class hierarchy can be found in the API Reference Tables section or by referring to the official MFC class hierarchy diagrams.
Commonly Used Classes
Here are some of the most frequently encountered MFC classes:
CWinApp: The base class for your application object. It manages the application's initialization, execution, and termination.CWnd: The base class for all window classes in MFC. It represents a standard Windows window.CDialog: The base class for dialog box classes.CFrameWnd: Represents a top-level application window (main frame).CView: The base class for classes that display data in a document.CDocument: The base class for document classes that manage application data.CString: A class that provides support for manipulating strings.CRect,CPoint,CSize: Classes for representing rectangles, points, and sizes, respectively.
API Reference Tables
Below is a partial listing of key MFC classes and their primary functions. For a complete and detailed reference, please consult the official MFC Reference Manual.
Core Classes
| Class Name | Description | Inherits From |
|---|---|---|
CObject |
Base class for most MFC classes. | None |
CCmdTarget |
Base class for objects that can handle Windows messages. | CObject |
CWnd |
Base class for all window classes. | CCmdTarget |
CFile |
Abstract base class for file classes. | CObject |
CString |
Represents a character string. | None (special class) |
Application and Document/View Classes
| Class Name | Description | Inherits From |
|---|---|---|
CWinApp |
Application object. | CCmdTarget |
CDocument |
Document object. | CObject |
CView |
View object. | CWnd |
CFrameWnd |
Main frame window. | CWnd |
CDialog |
Dialog box. | CWnd |
Collection Classes
| Class Name | Description | Inherits From |
|---|---|---|
CArray |
Supports array collections. | CObject |
CList |
Supports linked-list collections. | CObject |
CMap |
Supports map (key-value pair) collections. | CObject |
For more detailed information on specific classes, including member functions, data members, and examples, please refer to the comprehensive MFC documentation.