Go编译器抱怨我的代码将切片附加到切片。以下是相关摘录:
type LanidEntry struct { lanid string group string contact string } var lanids []LanidEntry func load_file() (lanids_loaded []LanidEntry, errormsgs string) { // ... } func Load() (lanids []LanidEntry, errormessages string) { lanids_loaded, errormsgs := load_file(filename1, contact1) lanids = append(lanids, lanids_loaded) // ... }
该append行生成以下编译器消息:
append
src\load_lanids\load_lanids.go:50: cannot use lanids_loaded (type []LanidEntry) as type LanidEntry in append
我知道,根据Go Blog帖子中 标题为Append:the Built-in function 一节下的示例,将切片追加到切片会很好。
您需要使用...:
...
lanids = append(lanids, lanids_loaded...)
另外,还请格式化您的代码:)
您还应该阅读Wiki上的Slice Tricks。