Error Kompilacja VS 2013

0

mam taki kod i nie wiem za bardzo co jest zle kompiluje przez vs 2013

 
	#else //YUR_RINGS_AMULETS
		return std::min(900, 220 + (2* (level - 1)));
              int vipstatus;

Error:
error C2782: 'const _Ty &std::min(const _Ty &,const _Ty &)' : template parameter '_Ty' is ambiguous

3

Argumenty do funkcji std::min są różnych typów i kompilator nie wie, który typ podstawić za _Ty.

Np. jeżeli level jest typu double to znaczy, że drugi argument w całości jest takiego typu. Za to 900 jest typu int. Mamy więc std::min(int, double) i jakie wybrać _Ty? Musisz sprawić żeby obydwie strony były tego samego typu albo jawnie podać typ w szablonie np: std::min<int>(...).

1 użytkowników online, w tym zalogowanych: 0, gości: 1