int max =std::numeric_limits<int>::max();
根據錯誤提示:web
f:\code\cpp\webspider\main.cpp(47) : warning C4003: not enough actual parameters for macro 'max'
f:\code\cpp\webspider\main.cpp(47) : error C2589: '(' : illegal token on right side of '::'
f:\code\cpp\webspider\main.cpp(47) : error C2059: syntax error : '::'
緣由: STL的numeric_limits::max()和VC6 min/max 宏衝突問題。解決: 經過括號「()」來避免預編譯器報錯。int max = (std::numeric_limits<std::streamsize>::max)(); 便可。
問題應該是以上兩個頭文件的宏定義出現了衝突。ide