代码:
package main
import "fmt"
type implementation struct {
d []int
}
func (impl *implementation) getData() interface{} {
return impl.d
}
type phase struct{}
type data interface {
getData() interface{}
}
func MakeIntDataPhase() *phase {
return &phase{}
}
func (p *phase) run(population []data) []data {
return nil
}
func main() {
var population []implementation
MyPhase := MakeIntDataPhase()
fmt.Println(MyPhase.run(population))
}
在操场上运行以下代码时出现以下错误:prog.go:30:25: cannot use population (type []implementation) as type []data in argument to MyPhase.run
我是 golang 的新手,我不明白为什么会这样?
结构从接口implementation实现方法。只用一片in方法还不够吗?getData()dataimplementationrun
我的推理哪里错了?
BIG阳
相关分类