Для примера программы, хотя это все хорошо для меня.Но мне было интересно, как это происходит.
Я создал консольное приложение с включенным флажком «MFC» при создании проекта (VC2008).Он создал стандартную _tmain
реализацию с AfxWinInit
вызовами и все.Затем я написал свою пользовательскую функцию Main
и вызвал ее из _tmain
.
Теперь, как только вы нажмете F10 или F11, чтобы начать отладку, она перейдет в Main
, а не_tmain
(да, через самого _tmain
) - как и почему - вот в чем вопрос.
Нет. Я вообще не устанавливал настройки проекта.это примерно 32-битная сборка отладки.
РЕДАКТИРОВАТЬ: Интересно то, что это:
#include "stdafx.h"
void Main()
{
printf("This is custom main");
}
int _tmain(int argc, _TCHAR* argv[])
{
if(false) // Getting fooled, or fooling us?
Main();
return 0;
}
Visual Studio рассматривает Main
в качестве точки входа и ничего не делает, когда яначать отладку с помощью F10 / F11 - поскольку false
имеет значение false и не позволяет вызывать Main
!