type user struct{
id int
score float32
enrollment time.Time
name, addr string}
匿名结构体
var stu struct{// 声明stu是一个结构体,但这个结构体是匿名的,stu为变量名称,不是结构体名称
Name string
Addr string}
stu.Name ="zcy"
stu.Addr ="bj"// 匿名结构体通常用于只使用一次的情况
匿名成员
type Student struct{
Id intstring// 匿名字段float32// 直接使用数据类型作为字段名,所以匿名字段中不能出现重复的数据类型}var stu = Student{Id:1,string:"zcy",float32:79.5}
同时定义多个结构体
type(
user struct{
id int
score float32
enrollment time.Time
name, addr string}
stu struct{
Name string
Addr string})
示例代码
package main
import("fmt""time")type User struct{
Id int
name string
enroll time.Time
string}type Student struct{
Score float32}funcHello(man string, user User){
fmt.Printf("%s %s\n", man, user.name)}func(user User)Hello2(man string){
fmt.Printf("%s %s\n", man, user.name)}funcmain(){var user User
user = User{name:"zcy",string:"BJ"}Hello("ABC", user)// 函数调用
user.Hello2("ABC")// 结构体成员方法调用,和函数调用结果一致,函数的另一种写法}