Есть ли способ предотвратить включение файла заголовка без защиты заголовка во время компиляции?C++

Программы на C++. Форум разработчиков
Anonymous
Есть ли способ предотвратить включение файла заголовка без защиты заголовка во время компиляции?

Сообщение Anonymous »

Я пытаюсь запретить включение списка файлов заголовков из исходного файла и тем самым предотвратить зависимость от классов, определенных в этих заголовках.
Есть способы проверки макросы защиты заголовка (как показано ниже), но в моем случае все исключаемые заголовки используют #pragma Once вместо защиты заголовка.

Код: Выделить всё

#ifdef A_BANNED_HEADER_FILE_H
static_assert(false);
#endif
Есть ли способ принудительно включить 0 во время компиляции?
P.S. Чтобы избежать зависимости от какого-либо класса, я мог бы определить класс с тем же полным именем в исходном файле и позволить ошибке переопределения кричать при случайном включении.

Подробнее здесь: https://stackoverflow.com/questions/793 ... ng-include

Вернуться в «C++»