Jac*_*mes 2 type-inference swift
在斯威夫特语言指南说:
Double表示64位浮点数.当浮点值必须非常大或特别精确时使用它.
Float表示32位浮点数.当浮点值不需要64位精度时使用它.
但后来:
当推断浮点数的类型时,Swift总是选择
Double(而不是Float).
这不是一个矛盾吗?对于大多数浮点数,64位精度不会过高吗?这是否意味着我应该明确定义Float数字,或者差异在实践中不重要?
Gab*_*lla 10
默认为Double保证类型推断不会导致浮点精度错误.
默认Float会在某些情况下造成麻烦,所以我会说这是一个保守的选择.
我没有硬数字来支持我的说法,但我怀疑这也是因为表现差异不那么重要.