将多值附加到函数参数后面

问题描述 投票:-1回答:2

是否可以压缩此操作?

a, b := obtain2Values()
c = ":)"

process3Values(a, b, c)

变成这样的东西? (我知道这并不完全可以,但是我正在寻找一个替代方法,如果存在的话)

process3Values(obtain2Values(), ":)")
go
2个回答
1
投票

简而言之,恐怕不是。通常,Go不能很好地“压缩”表达式,因为它会返回多个返回值(认为是错误),无法以组的形式传递。这使得很难按照C#中的Linq或JavaScript中的Lodash之类来实现链接的函数表达式。您总是被迫分别处理不同的返回值。这使Go编写起来相当费力,但也非常明确,这是为了避免错误。


0
投票

此作品:

© www.soinside.com 2019 - 2024. All rights reserved.