ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1376666 Топик полностью
il-2 (28.11.2023 12:10, просмотров: 174) ответил 3m на Как в С разрулить конфликт имен enum ? В одном хидере объявлено
Если это 2 разные библиотеки, менять в которых ничего нельзя, то надо решать проблему именно в своих исходниках, где происходит конфликт имен при включении обоих хидеров в компиляцию: 

Данные хидеры должны подключаться не напрямую, а через свой хидер - project.h:

// project.h

#define SUCCESS ERR_SUCCESS

#include "header1.h"

#undef SUCCESS

#define SUCCESS HASH_SUCCESS

#include "header2.h"


#undef SUCCESS

#define SUCCESS 0

#define ERR_SUCCESS 0

#define HASH_SUCCESS 0


В своем проекте можеш использовать SUCCESS, ERR_SUCCESS, HASH_SUCCESS

ЗЫ: Не проверял, но вроде должно работать. И таки да - это костыль :-)