¿Cómo puedo decirle al preprocesador que no reemplace una macro específica?Prevenir el preprocesador C para hacer una macro-sustitución específica
El problema específico es el siguiente: los archivos de encabezado de Windows definen la macro GetMessage.
Mis archivos de encabezado C++ con mi API tienen un método GetMessage. No quiero cambiar el nombre de mi método. Pero al usar la API en Windows, incluyendo windows.h, reemplaza mi llamada al método GetMessage con GetMessageA.
Just doing #undef GetMessage no es bueno, ya que el código que usa la API también usa Windows GetMessage. –
Ah, otro ejemplo del uso indiscriminado de Windows SDK de macros que destruyen todos y cada uno de los espacios de nombres (y no solo en la característica de espacio de nombres de C++). –
@vincent: ver don.El comentario de newfeld en la respuesta '#undef GetMessage' de ShoeLace –