maneras de incluir muchos archivos de encabezado

Recientemente me encontré con el código que maneja los archivos de cabecera de esta manera. Habría un archivo de encabezado llamado decirglobal.h Estaglobal.h incluiría algunos otros archivos de encabezado, por ejemplo,

#include "settings.h"
#include "math.h"
#include "somelibrary.h"
#include "someOtherlibrary.h"
...

Ahora, cada vez que algún archivo quería incluir decirsomelibrary.h, en lugar de escribir#include somelibrary.h simplemente incluiríaglobal.h. Así que cada archivo fuente en el proyecto acaba de tener:#include "global.h"

¿Es esta forma común de evitar escribir muchos archivos incluidos en cada archivo fuente? cuales son los otros beneficios

PD. extra: sería bueno si alguien pudiera explicar por qué esto funciona

Respuestas a la pregunta(3)

Su respuesta a la pregunta