Zawijanie #includes w # ifndef's - dodaje dowolną wartość?

OdziedziczyłemC/ Kod C ++ oraz w wielu plikach .cpp#include dyrektywy są zawijane w # ifndef's z nagłówkiem single single include#define.

na przykład

<code>#ifndef _INC_WINDOWS
#include <windows.h>
#endif
</code>

i wygląda na windows.h.

<code>#ifndef _INC_WINDOWS
#define _INC_WINDOWS
...header file stuff....
#endif // _INC_WINDOWS
</code>

Zakładam, że zostało to zrobione, aby przyspieszyć kompilację / przetwarzanie wstępne kodu.

Myślę, że jest to brzydka i przedwczesna optymalizacja, ale ponieważ projekt ma 5 minut na budowę, nie chcę pogarszać sytuacji.

Czy więc praktyka dodaje jakiejkolwiek wartości lub przyspiesza losy? Czy można je wyczyścić?

Aktualizacja: kompilatorem jest MSVC (VS2005), a platformą jest Win32 / WinCE

questionAnswers(2)

yourAnswerToTheQuestion