我习惯于选择在保留语义的同时完全表示我的值所需的最小数据类型。我不使用long
whenint
保证足够。同样适用于int
vs short
。
但是对于实数,在 C# 中有常用的double
-- 并且没有对应的single
or float
。我仍然可以使用System.Single
,但我想知道为什么 C# 没有像他们使用double
.
相反,有语言关键字short
, int
, long
, ushort
, uint
, 和ulong
。
那么,这是向开发人员发出的信号,即单精度已过时、已弃用,或者不应该以其他方式用于支持double
ordecimal
吗?
(不用说,单精度的缺点是精度较低。这是众所周知的较小尺寸的权衡,所以我们不要关注这一点。)
编辑:抱歉,我错误地认为这float
不是 C# 中的关键字。但它确实使这个问题变得毫无意义。