Cでは、以下はエラーになりますが、C++では通ります。
int a;
a = int(-3);
printf("%d\n", a);

自分でやってて良く分かってないのですが、このように
データタイプ(値) というのは C++ 的にはどのような解釈
になるんでしょうか?