Я просматривал код doom3 на github и заметил что-то необычное. Несколько файлов имеют только одно включение для файла с именем idlib / precompiled.h, и этот файл включает в себя несколько других заголовков, таких как
...
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include <string.h>
#include <assert.h>
#include <time.h>
#include <ctype.h>
#include <typeinfo>
#include <errno.h>
#include <math.h>
...
и для программирования заголовков
#include "../framework/BuildVersion.h"
#include "../framework/BuildDefines.h"
#include "../framework/Licensee.h"
#include "../framework/CmdSystem.h"
#include "../framework/CVarSystem.h"
Интересно, есть ли для этого веские причины, потому что я впервые вижу такое