是否可以压缩此操作?
a, b := obtain2Values()
c = ":)"
process3Values(a, b, c)
变成这样的东西? (我知道这并不完全可以,但是我正在寻找一个替代方法,如果存在的话)
process3Values(obtain2Values(), ":)")
简而言之,恐怕不是。通常,Go不能很好地“压缩”表达式,因为它会返回多个返回值(认为是错误),无法以组的形式传递。这使得很难按照C#中的Linq或JavaScript中的Lodash之类来实现链接的函数表达式。您总是被迫分别处理不同的返回值。这使Go编写起来相当费力,但也非常明确,这是为了避免错误。
此作品: