2012-06-27 16 views
5

IN VS 2010 Pro Ricevo un errore di compilazione che attesta identificatore "nella parte max() del comando. Sembra che nel file di intestazione windows.h ci sia un massimo (a, b) identificato e voglia usarlo.std :: cin.ignore (std :: numeric_limits <std :: streamsize> :: max(), ' n') errore quando si utilizza #include <Windows.h>

Ho cercato di usare il # include pure, ma questo non risolve il problema

Esiste un modo per aggirare questo?

+0

possibile duplicato di [std :: max - previsto un identificatore] (http://stackoverflow.com/questions/7035023/stdmax-expected-an-identifier) ​​ – ildjarn

+0

un altro duplicato [macro "max" richiede 2 argomenti, ma solo 1 dato] (http://stackoverflow.com/questions/518517/macro-max-requires-2-arguments-but-only-1-given) – jrok

risposta

12

L'intestazione <windows.h> ha le macro min() e max() da tempo immemorabile e spesso causano problemi con C++. Fortunatamente, puoi disabilitarli aggiungendo #define NOMINMAX prima di includere <windows.h>.

+0

La tua risposta è migliore della mia. –