重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

Go的空接口

空接口(interface{})不包含任何的方法,正因为如此,所有的类型都实现了空接口,因此空接口可以存储任意类型的数值。它有点类似于C语言的void *类型。

    var v1 interface{} = 1     // 将int类型赋值给interface{}
    var v2 interface{} = "abc" // 将string类型赋值给interface{}
    var v3 interface{} = &v2   // 将*interface{}类型赋值给interface{}
    var v4 interface{} = struct{ X int }{1}
    var v5 interface{} = &struct{ X int }{1}

当函数可以接受任意的对象实例时,我们会将其声明为interface{},最典型的例子是标准库fmt中PrintXXX系列的函数,例如:
    func Printf(fmt string, args ...interface{})
    func Println(args ...interface{})

标题名称:Go的空接口
本文路径:http://cqcxhl.cn/article/pecepo.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP