【发布时间】:2017-02-13 09:07:38
【问题描述】:
既然参数e 是int,为什么不直接返回一个int64?这有什么特别的原因吗?
【问题讨论】:
既然参数e 是int,为什么不直接返回一个int64?这有什么特别的原因吗?
【问题讨论】:
2 个原因:
首先,参数也可能为负数,在这种情况下,结果是0 和1 之间的小数,因此float64 返回值不合理,而是需要。
fmt.Println(math.Pow10(-1))
输出(在Go Playground 上试试):
0.1
其次,几乎*math 包的每个函数都返回 float64 类型的值,添加一个不会破坏“一致性”的值。
[*] 少数例外情况包括像 Float32frombits() 和 llogb() 这样的偏差是合理的函数。
【讨论】: