Ответ 1
Предварительно скомпилированные заголовки могут значительно ускорить компиляцию файлов .cpp в вашем проекте. По соглашению, именно stdafx.h включает в себя все файлы .h, которые вы хотите предварительно скомпилировать. Вы можете назвать его как угодно, но шаблон проекта просто выбирает stdafx.h
Но прежде чем это сработает, должен быть один файл .cpp, который #include stdafx.h и сначала компилируется. Перед всеми другими .cpp файлами в вашем проекте. Как только это будет сделано, компилятор может использовать созданный файл .pch и быстро скомпилировать все остальные файлы .cpp, больше не нужно фактически #include заголовки.
Stdafx.cpp - это тот самый файл .cpp. У него есть настройка, которая отличается от всех других файлов .cpp, он создается с помощью /Yc. Параметр "Создать файл скомпилированного заголовка".
ОБНОВЛЕНИЕ: после 28 лет Microsoft нарушила их практику "когда-то была стандартная среда, но никто никогда не видел" на VS2019. Теперь имя "pch" вместо "stdafx", конечно, для более очевидной аббревиатуры. Просто смена имени, механика все та же.