#2.4 高级类型 ##struct Go语言中,也和C或者其他语言中一样,我们可以声明新的类型,作为其它类型的属性或字段的容器。例如,我们可以创建一个自定义类型`person`代表一个人的实体。这个实体拥有属性:姓名和年龄。这样的类型我们称之`struct`。如下代码所示: type person struct { name string age int } 看到了吗?申明一个strcut如此简单,上面的类型包含有两个字段 - 一个string类型的字段name,用来保存用户名称这个属性 - 一个int类型的字段age,用来保存用户年龄这个属性 如何使用strcut呢?请看下面的代码 type person struct { name string age int } var P person // P现在就是person类型的变量了 P.name = "Astaxie" //赋值"Astaxie"给P的name属性. P.age = 25 //赋值"25"给变量P的age属性 fmt.Println("The person's name is %s", P.name) // 访问P的name属性. 除了上面这种P的申明使用之外,还有两种申明使用方式 - 1.按照顺序提供初始化值 P := person{"Tom", 25} - 2.通过`field:value`的方式初始化,这样可以任意顺序 P := person{age:24, name:"Tom"} ##interface ## links * [目录]() * 上一章: [流程和函数](<2.3.md>) * 下一节: [面向对象](<2.5.md>) ## LastModified * $Id$