MFC의 계층 구조의 최상단에 있는 클래스이다. 자바로 치자면 Object 클래스에 비슷한 클래스이다.
이 클래스로부터 파생된 클래스는 다음의 3가지 레벨로 구분되는 기능이 있다.
각 레벨의 구분은 다음의 매크로를 통해서 설정할 수 있다.
DECLARE_DYNAMIC() | 런타임 클래스 정보를 지원한다. |
DECLARE_DYNCREATE() | 런타임 클래스 정보와 동적인 객체 생성을 지원한다. |
DECLARE_SERIAL() | 런타임 클래스 정보와 동적인 객체 생성, 그리고 객체들의 시리얼화를 지원한다. |
각각은 보조 매크로가 필요하며 DECLARE_ 대신 IMPLEMENT_ 접두사가 붙은 형태이다. 보조매크로는 클래스의 구현 파일 부분에 포함되어야 한다.