Я не думаю, что есть что-то, хотя я, конечно, понимаю желание одного.Всякий раз, когда мне приходится создавать свою кроссплатформенную библиотеку в системе, которая не поддерживает PCH, это занимает вечность, поскольку многие файлы тянут больше, чем им действительно нужно, и было бы неплохо обрезать это.К сожалению, я не могу из-за того, как Visual Studio обрабатывает PCH.А именно, что включение PCH должно быть первой строкой без комментариев в файле.Судя по тому, как вы сформулировали свой вопрос, я подозреваю, что вы также работаете с Visual Studio.
Я не уверен, будет ли это работать для вас, но вы можете попробовать что-то вроде этого:
#include MY_PCH_FILE
И используйте /DMY_PCH_FILE="myfile.h"
в командной строке, чтобы управлять первым файлом включения.После этого вы получаете полный контроль над тем, что будет включено, и правильные средства защиты заголовков, а также оптимизация в большинстве современных компиляторов для обнаружения средств защиты заголовков может сократить время сборки.Вы можете изменить определение макроса для отдельного файла в настройках сборки вашего проекта, аналогично тому, как вы можете изменить настройки PCH для каждого файла.
Хотя я должен признать, что не уверенчто вы пытаетесь сделать, и я подозреваю, что это действительно XY проблема