SORU
15 Aralık 2009, Salı


uyarı C4003 ve hataları C2589 ve C2059: x = std::numeric_limits<int>::max();

Bu çizgi doğru küçük bir test programı çalışıyor, ancak istediğim program, derleyici şikayetler alıyorum:

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

İle aynı sonuçları alıyorum:

#include <limits>
using namespace std;

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

Neden makro max(a,b) max görüyorsun; ?

CEVAP
26 Kasım 2012, PAZARTESİ


Çözüm bu gibi parantez ile işlev adı kaydırmak olacaktır: * * * 4*. Aynı durum 5**.

Emin değilim bunun için iyi bir çözüm... NOMİNMAX daha iyi IMO, ama bu bazı durumlarda bir seçenek olabilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ionized Digital Air Studios

    Ionized Digi

    20 HAZİRAN 2009
  • JorteexHD

    JorteexHD

    20 NİSAN 2012
  • Justin Case

    Justin Case

    3 EKİM 2011