如何在 go map 中存储类型以供稍后初始化

我正在尝试实现一个工厂函数,该函数将返回满足接口契约的许多结构之一的实例X。


m := make(map[string] ?)

func init () {

    m["a"] = ?

    m["b"] = ?

}


type X interface { 

    y()

}


type A struct {}

func (a * A) y () {}


type B struct {}

func (b * B) y () {}



function factory(name string) X {

    return &m[name]{}

}

上面的代码只是我试图实现的简化演示 - 寻找是否可能的指针,或者是否有不同的 go 成语来解决我缺少的这种需求。


明月笑刀无情
浏览 165回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go