Вопрос Win API на C++ с MFC помогите пожалуйста

Регистрация
16 Июл 2013
Сообщения
83
Репутация
0
Спасибо
0
Монет
0
Здравствуйте, помогите пожалуйста, в чем отличие программ с использованием main() и без него?
в первом прога работает без main(), а во втором примере, созданном по умолчанию (шаблон Win32--> Console Application + mfc) есть функция main(). Я понимаю что main() - точка входа, но в первом примере мы должны переопределить метод InitInstance(), и первый метод работает без main() или WinMain(), а во втором есть функция AfxWinInit(). Скажите пожалуйста, в чём отличие программы, которую рекомендует нам visual studio?
//otvet.imgsmail.ru/download/224708901_8fb4c979f95a504e10d0248b1d43d865_120x120.png//otvet.imgsmail.ru/download/224708901_d9772070771fa0fa06fd9290b8de5377_120x120.png
 
AfxWinInit() - инициализирует библиотеку MFC, но в случае консольного приложения, ее нужно вызывать явно в main(). В случае оконного приложения вызов AfxWinInit() вызывается в WinMain(), реализация которой заботливо упрятана программистами микросовта в недра библиотеки MFC. Т. е. WinMain() уже заранее создана и самому эту функцию создавать ненужно, но в любом случае она есть в уже готовом приложении MFC.
 
MFC никогда не пользовался, это обертка над api, class для работы с api, первый рисунок показывает class и обращение к функции, без main не будет конечно работать ни MFC, ни традиционный способ,
 
Назад
Сверху