例如,如果我想执行r = a *(b - c)。我愿意:
var r, a, b, c, t big.Int
t.Sub(&b, &c)
r.Mul(&a, &t)
在包文档中,它表示操作返回结果以允许链接。但由于used变量不用作运算符参数,而只用于存储结果,我该如何进行链接操作?换句话说,如何只使用一行代码来编写我的例子,而没有临时变量t
?
答案 0 :(得分:4)
例如,在Go 1上,
package main
import (
"fmt"
"math/big"
)
func main() {
var r, a, b, c big.Int
a = *big.NewInt(7)
b = *big.NewInt(42)
c = *big.NewInt(24)
// r = a * (b - c)
r.Mul(&a, r.Sub(&b, &c))
fmt.Println(r.String())
}
输出:
126