столкновения макросов в сторонних библиотеках - PullRequest
0 голосов
/ 22 апреля 2020

Я использую yojimbo - сетевую библиотеку и spdlog - библиотеку журналов для игры, в которой я работаю на. Когда я пытаюсь скомпилировать исходный файл с заголовками как yojimbo, так и spdlog, я получаю коллизии макросов, приводящие к большому количеству ошибок, данных g ++.

Исходные файлы с любым из заголовков, но не с обоими, компилируются нормально.

Есть ли способ избежать столкновения макросов в этих сторонних библиотеках?

1 Ответ

3 голосов
/ 22 апреля 2020

Есть ли способ избежать конфликта макросов в этих сторонних библиотеках?

Да. Самое простое решение состоит в том, чтобы не включать оба заголовка, которые определяют конфликтующие макросы, в одну и ту же единицу перевода. Если этого недостаточно, то одно из возможных решений - отменить конфликтующий макрос после включения первого. Если вам нужны оба макроса, вы можете переписать их под другим именем после неопределенного определения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...