سلام.
من وقتی از std::max استفاده می کنیم خطای زیر ظاهر میشه.
Illegal token on right side of ::
برای رفعش من قبل از اینکه windows.h را اینکلود کنم ماکرو زیر را تعریف کردم.
#define NOMINMAX
بازم هم خطا میده
اگر با NOMINMAX باز هم خظا دارید به نظرم مستقیم max را undef کنید.
#undef max
سلام؛ دقیقاً مشخص کنید که به چهصورت استفاده میکنید و به چهصورت برنامه رو کامپایل میکنید ؟ همچنین بهتره که فلگ USE_MATH_DEFINES_ رو هم تعریف کنید :
https://docs.microsoft.com/en-us/cpp/c-runtime-library/math-constants?view=vs-2019
به نظرم تابع std::max را به صورت زیر استفاده کنید:
foo = (std::max)(a,b);