Warnung C4003 und Fehler C2589 und C2059 bei: x = std :: numeric_limits <int> :: max ();

Diese Zeile funktioniert in einem kleinen Testprogramm einwandfrei, aber in dem Programm, für das ich es möchte, erhalte ich die folgenden Compiler-Beschwerden:

#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 : '::'

Ich erhalte die gleichen Ergebnisse mit:

#include <limits>
using namespace std;

x = numeric_limits<int>::max();

Warum wird max als das Makromaximum (a, b) angesehen? ?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage