В заголовке довольно типично включить другие заголовки. Заголовки, закрытые заголовком x, будут заблокированы в любом файле, который содержит x. Это должно быть тривиально понять, как только вы поймете, что , включая файл в другом случае. В этом случае один из стандартных заголовков оказался включенным в другой.
Файлы, включенные заголовками, могут меняться между версиями. Если вы не включаете требуемый заголовок, ваша программа может разбиться на другую (версию) стандартную библиотеку, даже если она может работать в текущей реализации. Конечно, это относится и к другим библиотекам.