考虑这段代码
import ( "fmt" "math/big" ) func main() { var b1,b2,b3,bigSum big.Float b1.SetFloat64(25.3) b2.SetFloat64(76.2) b1.SetFloat64(53.1) bigSum.Add(&b1, &b2).Add(&b3, &bigSum) fmt.Println(bigSum) // {53 0 0 1 false [9317046909104082944] 8} fmt.Println(&bigSum) // 129.3 }
我有两个问题
我为什么要通过bigSum为 参考 (使用&),以得到正确的答案,否则我们会回来的对象?
bigSum
&
PrintlnGo 如何运作?我的意思是它如何知道应将哪种格式应用于不同类型?
Println
Stringer
String()
big.Float