简而言之:Go 语言不支持命名参数,但 IDE 支持(见下文)。我同意命名参数在 Go 中可能很有用。它可以帮助避免错误。例如,就在昨天,我的测试发现了一个错误,其中源和目标。copy()(Go 内置函数)的参数从后到前。然而,Go可能拥有数百种有用的语言功能。我们尽量避免向语言添加非必要的功能,以保持简单。一旦您在大型项目中使用了 Go,您就会非常感激与其他语言相比,事情要简单得多。(我专业使用过十多种语言,而 Go 是迄今为止最不烦人的。)但实际上,如果您的 IDE 支持,您可以使用命名参数。例如,我使用 GoLand,当您输入函数的参数时,它会显示参数名称(浅灰色),并在值之前显示冒号。这比您习惯的更好,因为您甚至不需要输入名称!
Go 没有命名参数。我所知道的 Go 命名参数中最接近的事情是使用结构体作为输入。所以对于你的例子你可以这样做 -type Input struct { A int B int}func Add(in Input) int { return in.A + in.B}func main() { c := Add(Input{A: 1, B: 3}) return c}