この作品のようなものを見て、どういうわけか驚いています:
float f = 10.25f;
int i = (int)f;
// Will give you i = 10
ゲインは何ですか?
OTOH 10.25 は 10 とはまったく異なるものであり、同意されるでしょう。このようなソフトな変換から悪いことが起こる可能性があります。
代わりにどの言語でエラーが発生しますか?
次のようなものを期待します: "Error: Can't represent 10.25 as an integer"
.
その間に与えられた回答へのWRT:はい、「ラウンド」のような機能のように信頼できると考えられるかもしれません。しかし、キャストから期待されるデータ/情報の整合性へのストレートな WRT ではありません。
おそらく、デフォルトで「int」の動作になる「truncate」関数がより良い選択になるでしょうか?