ぱふの自由帳

週2更新目指す技術ブログ。メインはUnity。最近、競プロ始めましたー!良ければフォローお願いします(`・ω・´)

【C#】エディタで「possible loss of fraction」の警告が出た時

possible loss of fractionの意味

取り敢えず、googleで翻訳してみましょう。

google『可能な分数の損失』

うーん...意味が分からない...。自分で訳すしかないですね。笑
......
......
『分数の損失が起こりうる』という意味かな。

原因

C#では割り算の際にint / intintになります。(切り捨て)
10 / 4という計算をすると2.25ではなく2になるわけです。

この計算をfloatdoubleの変数に代入したり、floatdoubleを引数に取る関数に渡したりすると、possible loss of fractionという警告が出るわけです。

解決方法

int / intの割り算を故意的に行っている場合は問題ないと思います。
故意的でない場合は(float) int / intのようにキャスト変換してあげれば問題ないと思います。

おわり

Twitterフォロー歓迎です...(`・ω・´) ヨロシク!