我从 golang(完全菜鸟)开始,我正在使用一个简单的包装函数 for fmt.Println(str),只是因为它更短而且我更习惯了:func echo(str ...interface{}) {
fmt.Println(str)
}问题是 for 的输出echo("Hello")不是.[Hello]Hello我在这里遗漏了一些语法细节吗?如何更改功能以按预期工作?除了这个功能的实际需要外,我还对有关此问题的特定于语言的详细信息感兴趣。谢谢!
1 回答
跃然一笑
TA贡献1826条经验 获得超6个赞
问题是您将fmt.Println
参数作为切片发送给参数,而不是作为 varadic。
将您的方法更改为:
func echo(str ...interface{}) { fmt.Println(str...) }
它会如您所愿地工作。
- 1 回答
- 0 关注
- 109 浏览
添加回答
举报
0/150
提交
取消