2010-01-21 18 views
6

Me pregunto si hay una forma de desactivar todas las advertencias en un archivo específico (por ejemplo, usando una directiva de preprocesador).C++ Deshabilitar las advertencias en un específico incluir

Estoy usando CImg.h y quiero deshacerme de las advertencias relacionadas con ese código.

Estoy compilando ambos con VS (la versión para Windows) y gcc (el Linux uno), así que me gustaría tener una manera genérica ...

Gracias!

Respuesta

6

Puede hacerlo utilizando #pragma en Microsoft compilador:

http://msdn.microsoft.com/en-us/library/2c8f766e%28VS.80%29.aspx

Algo como esto:

#pragma warning (push, 0) 

//....header file 

#pragma warning (pop) 

no le puede ayudar con compilador gcc, alguna información aquí: Selectively disable GCC warnings for only part of a translation unit?

EDITAR EDITAR Probar push, 0.

+0

Pero la advertencia de #pragma espera el número/código de la advertencia que desea deshabilitar ... ¿cómo podría desactivar * todo *? Thx para la respuesta. – huff

+0

¡Casi! El nivel de advertencia 1 todavía produce algo. Afortunadamente, al intentar #pragma warning (push, 0) * does * work (aunque ese nivel no se especifica en la página msdn). Ahora para una respuesta de gcc ... (aunque obtuviste la respuesta correcta, puedes editarla para que sea más correcta: D) – huff

+0

Oh, increíble, pensé en probar el nivel 0 pero no encontré una advertencia de nivel 1 para prueba en ... –

1

Mire en #pragma warning.

Cuestiones relacionadas