代码示例
type user struct {
name, code string
age int
}
type Person struct {
string
int
}
type person struct {
name string
age int
cars car
}
type car struct {
name string
color string
}
func main() {
user1 := user{"张三", "123", 24}
user2 := user{
name: "李四",
code: "124",
age: 25,
}
fmt.Println(user1, user2)
user3 := user{}
fmt.Println(user3)
car1 := struct {
name string
}{name: "BBA"}
fmt.Println(car1.name)
fmt.Println(car1)
user1p := &user1
fmt.Println(*user1p)
fmt.Println(user1p.name, (*user1p).name)
person1 := Person{
"小红",
10,
}
fmt.Println(person1)
my := person{
name: "lixiaoyu",
age: 22,
cars: car{
name: "BYD",
color: "red",
},
}
fmt.Println(my)
fmt.Println(my.name)
fmt.Println(my.cars.name)
}
输出:
{张三 123 24} {李四 124 25}
{ 0}
BBA
{BBA}
{张三 123 24}
张三 张三
{小红 10}
{lixiaoyu 22 {BYD red}}
lixiaoyu
BYD
匿名结构体
type Address struct {
city, code string
}
type Person struct {
name string
age int
Address
}
func main() {
var p Person
p.name = "李逵"
p.age = 50
p.Address = Address{
city: "五指山",
code: "555555",
}
fmt.Println("Name:", p.name)
fmt.Println("Age:", p.age)
fmt.Println("City:", p.city)
fmt.Println("Code:", p.code)
}
输出结果:
Name: 李逵
Age: 50
City: 五指山
Code: 555555