今天在学习golang的结构体时发现一个很有意思的东西---------结构体中的匿名字段,这一篇就简单介绍一下golang中结构体的匿名字段
结构体我们并不陌生,以下是一个简单的结构体案例:
type student struct { id int64 name string }这是在golang中声明结构体的简单案例,至于其中的用法我就不在这里赘述了,我们接下来看一下结构体的匿名字段的声明以及用法
首先简单的说一下什么是匿名字段:在前面学习过匿名函数,其实简单的来说就是一个没有名字的函数,而匿名字段其实也就是一个没有名字的字段。以下是一个声明结构体匿名字段的案例:
type person struct { string int }在结构体中声明匿名字段只需要指定该字段的类型,而他的调用方法也只需要指定该字段的类型,如下:
p1:=person{ "王五", 999, } fmt.Println(p1) fmt.Println(p1.string)他的运行结果如下:
{王五 999} 王五