Здравствуйте. При попытке вызвать std::numeric_limits<T>::max() под виндой компилятор (от студии 2008) ругается, поскольку макрос max(a,b) уже существует в windef.h. Для избегания этого используется очень некрасивый костыль:
C++ (Qt)
#if defined(Q_WS_WIN32) && defined(max)
#undef max
#endif
Подскажите пожалуйста можно ли как-то по-нормальному оградиться от этого макроса.