этот кодКак работает `fmt.Println` в Go?
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
}
У меня есть 2 вопроса
Почему я должен пройти
bigSum
, как ссылка (с помощью&
), чтобы получить правильный ответ, иначе мы вернемся объект?Как работает
Println
? Я имею в виду, как он знает, какой формат он должен применять для разных типов?
re 2 - используется отражение. выкупить пакет 'reflect'. –