# 18.4 结构体 创建: ```go type struct1 struct { field1 type1 field2 type2 … } ms := new(struct1) ``` 初始化: ```go ms := &struct1{10, 15.5, "Chris"} ``` 当结构体的命名以大写字母开头时,该结构体在包外可见。 通常情况下,为每个结构体定义一个构建函数,并推荐使用构建函数初始化结构体(参考例10.2): ```go ms := Newstruct1{10, 15.5, "Chris"} func Newstruct1(n int, f float32, name string) *struct1 { return &struct1{n, f, name} } ``` ## 链接 - [目录](directory.md) - 上一章:[运算符模板和接口](17.4.md) - 下一节:[字符串](18.1.md)