登录
首页 >  Golang >  Go问答

接口的初始化问题探讨

来源:stackoverflow

时间:2024-02-26 13:21:25 498浏览 收藏

目前golang学习网上已经有很多关于Golang的文章了,自己在初次阅读这些文章中,也见识到了很多学习思路;那么本文《接口的初始化问题探讨》,也希望能帮助到大家,如果阅读完后真的对你学习Golang有帮助,欢迎动动手指,评论留言并分享~

问题内容

我的意思是接口甚至可以包含像结构这样的复合类型

type a struct {

}
func main() {
    var a interface{} = a{}
}

奇怪的是,界面无法通过下面的大括号初始化。

type C interface {

}
func main() {
    _ = C{}
}

此处编译结果:无效的复合文字类型 c


解决方案


c 是一个接口类型,因此不能使用复合文字进行初始化。

https://golang.org/ref/spec#Composite_literals

要使代码编译,您可以这样做:

type C interface {

}

func main() {
    _ = C(nil)
}

今天关于《接口的初始化问题探讨》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>