Упаковка #include в # ifndef's - добавляет какое-либо значение?
Я унаследовалC/ C ++, и в ряде .cpp файлов#include
директивы заключены в # ifndef с внутренним одиночным заголовком include#define
.
например
<code>#ifndef _INC_WINDOWS #include <windows.h> #endif </code>
и выглядит как windows.h
<code>#ifndef _INC_WINDOWS #define _INC_WINDOWS ...header file stuff.... #endif // _INC_WINDOWS </code>
Я предполагаю, что это было сделано для ускорения компиляции / предварительной обработки кода.
Я думаю, что это уродливая и преждевременная оптимизация, но, так как проект имеет 5-минутное время сборки из чистого, я не хочу, чтобы все ухудшалось.
Так добавляет ли практика какую-либо ценность или ускоряет процесс? Можно ли их убирать?
Обновление: компилятор MSVC (VS2005) и платформа Win32 / WinCE