Используя MSVC2008, 32 бита в систему на 64 бита.
Мне когда-то рекомендовали никогда не включать windows.h как 'настоящий монстр и значительно замедлю мое время компиляции'.
Я пытался пропустить его, и, очевидно, получите ошибки компиляции. Я включал windef.h для определения всего DWORDs и т.д., но я быстро проваливаюсь, зная, что еще определить, чтобы заставить код компилировать.
Я теперь добираюсь:
2>c:\program files\microsoft sdks\windows\v7.0\include\winnt.h(6361) : error C2146: syntax error : missing ';' before identifier 'ContextRecord'
2>c:\program files\microsoft sdks\windows\v7.0\include\winnt.h(12983) : error C2065: 'PCONTEXT' : undeclared identifier
Кто-либо может предложить правильный подход здесь?
Спасибо
Simon
Внутренне windows.h учитывает многие определения, такие как NOMINMAX или WIN32_LEAN_AND_MEAN.
Это значительно сокращает время.
Используйте предварительно скомпилированные заголовки для сокращения времени компиляции и включайте windows.h.
Правильный ответ - «включить в PCH». Предварительно скомпилированные заголовки значительно сокращают время компиляции, и, вопреки распространенному мнению, это верно и для полных перестроек.
Если у вас есть более одного файла CPP в вашем проекте, команда «Перестроить все» создаст его один раз для всего проекта, что всего лишь потребует несколько секунд для компиляции - чтобы windows.h был включен во все файлы.