В Win32 существует множество мест, где значения флагов задаются с помощью значений DWORD, которые создаются путем выполнения побитового ИЛИ #defined констант.Преобразование флагов integer в текст, читаемый человеком
Однако, когда дело доходит до запуска программы и ее отладки, может возникнуть боль, чтобы разделить генерируемые значения флага обратно на их #define символы (вот почему мне нравятся типы перечислений).
Недостаточно переопределять функции и структуры Win32 для использования перечислений вместо констант, есть ли простой и безболезненный способ автоматического преобразования значений целочисленных флагов обратно в строковое представление их компонентов? Например, преобразование 192 в «FLAG_FOO | FLAG_BAR» (где FLAG_FOO равно 128, а FLAG_BAR - 64).
Некоторые из них могут уже иметь связанные строки, например коды ошибок. – chris