【发布时间】:2016-03-21 12:00:25
【问题描述】:
我有一个以v ...interface{} 为参数的方法,我需要在这个切片前面加上string。方法如下:
func (l Log) Error(v ...interface{}) {
l.Out.Println(append([]string{" ERROR "}, v...))
}
当我尝试使用 append() 时,它不起作用:
> append("some string", v)
first argument to append must be slice; have untyped string
> append([]string{"some string"}, v)
cannot use v (type []interface {}) as type string in append
在这种情况下,添加前缀的正确方法是什么?
【问题讨论】:
-
你不应该有一个首先将
v ...interface{}作为参数的方法。 -
本指南可能对您有用。 github.com/golang/go/wiki/SliceTricks
-
感谢分享@EzequielMoreno