Недавно коллега показал мне, что один исходный файл содержит более 3400 заголовков во время компиляции. У нас есть более 1000 единиц перевода, которые скомпилируются в сборке, что приводит к огромному штрафу за производительность над заголовками, которые, безусловно, не все используются.
Существуют ли какие-либо инструменты статического анализа, которые могли бы пролить свет на деревья в таком лесу, в частности, дать нам возможность решить, какие из них мы должны использовать для обработки?
UPDATE
Нашел интересную информацию о стоимости включения файла заголовка (и типы включенных охранников для оптимизации его включения) здесь, исходящий от этого вопроса.