- C++相談室 part114
318 :デフォルトの名無しさん[sage]:2014/10/17(金) 23:38:21.23 ID:Q4VSFD/U - unsigned int X;
(Xに何かが代入される) max( 1, X ); とすると、 error C2784: '_Ty std::max(std::initializer_list<_Elem>,_Pr)' : テンプレート 引数を 'std::initializer_list<_Elem>' に対して 'int' から減少できませんでした というコンパイルエラーになります。 int X; (Xに何かが代入される) max( 1, X ) となるとコンパイルに成功します。 これって、コンパイラが1をintと解釈してしまって、型が揃わないことによるエラーでしょうか? 何でunsigned intと推論してくれないんでしょうか?
|