CWinApp: класс приложений

Основной класс приложения в MFC инкапсулирует инициализацию, выполнение и завершение приложения для операционной системы Windows. Приложение, созданное на платформе, должно иметь один и только один объект класса, производный от CWinApp. Этот объект создается перед созданием окон.

CWinApp является производным от CWinThread, который представляет основной поток выполнения для приложения, который может иметь один или несколько потоков. В последних версиях MFC, InitInstanceфункции запуска ExitInstanceи OnIdle члена фактически находятся в классеCWinThread. Эти функции рассматриваются здесь, как будто они были CWinApp членами, так как обсуждение касается роли объекта в качестве объекта приложения, а не как основного потока.

Примечание.

Класс приложения представляет собой основной поток выполнения приложения. С помощью функций API Win32 можно также создавать вторичные потоки выполнения. Эти потоки могут использовать библиотеку MFC. Дополнительные сведения см. в разделе "Многопоточность".

Как и любая программа для операционной системы Windows, приложение платформы имеет WinMain функцию. Однако в приложении платформы вы не пишете WinMain. Он предоставляется библиотекой классов и вызывается при запуске приложения. WinMain выполняет стандартные службы, такие как регистрация классов окон. Затем он вызывает функции-члены объекта приложения для инициализации и запуска приложения. (Вы можете настроить WinMain , переопределив CWinApp функции-члены, вызывающие WinMain .)

Чтобы инициализировать приложение, WinMain вызывает функции и члены объекта InitApplicationInitInstance приложения. Чтобы запустить цикл сообщений приложения, WinMain вызывает функцию запуска члена. При завершении вызывает функцию-член WinMain объекта ExitInstance приложения.

Примечание.

Имена, отображаемые полужирным шрифтом в этой документации, указывают элементы, предоставляемые библиотекой классов Microsoft Foundation и Visual C++. Имена, отображаемые в monospaced типе, указывают на элементы, которые создаются или переопределяются.

См. также

Общие разделы по MFC
CWinApp и мастер приложений MFC
Переопределяемые функции-члены CWinApp
Специальные службы CWinApp