是的,我之前已经知道十进制或浮点数,我知道它们的用途,十进制是精确的,浮点数是不准确的。
在我正在进行的游戏中,我有一个播放器,它的移动速度为每秒36像素移动。我每秒更新大约10次,每次更新3.6次。我希望这是精确的,但十进制需要16个字节(128位),这是很多。如果我想保持准确性,我应该使用整数来缩放数字吗?或..漂浮更适合? Float和Int32都占用4个字节,但是整数不会丢失任何数字。那么Integer不应该更合适吗?那么为什么有人会使用浮动?
所以基本上,我应该使用哪一个来提高速度和准确性?我现在正在使用小数。我想在游戏中进行太多细节之前改变它,否则将会更难做出所有这些改变。
答案 0 :(得分:1)
与其他类型相比,16个字节 。满足您的要求,不要过早优化。
您也可以考虑使用int并将其解释为x / 10,这样就不会累积不准确性。但只有当那些128位真的让你失误时(他们不应该这样做,imho)。