이 줄은 작은 테스트 프로그램에서 제대로 작동하지만 내가하고자하는 프로그램에, 나는 다음과 같은 컴파일러 불만 얻을 :경고 C4003 및 C2589 및 C2059 오류 : x = std :: numeric_limits <int> :: max();
#include <limits>
using namespace std;
x = numeric_limits<int>::max();
:
#include <limits>
x = std::numeric_limits<int>::max();
c:\...\x.cpp(192) : warning C4003: not enough actual parameters for macro 'max'
c:\...\x.cpp(192) : error C2589: '(' : illegal token on right side of '::'
c:\...\x.cpp(192) : error C2059: syntax error : '::'
내가 가진 동일한 결과를 얻을 수를 max가 매크로 max (a, b)로 보이는 이유는 무엇입니까? ?
내 경우에는'-DNOMINMAX'없이 내부 컴파일러 오류가 발생했습니다. 마이크로 소프트가 끊임없이 자신을 상대로 어떻게 투쟁하고 있는지 보는 것은 재미있다. –