// structDemo
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello World!")
//声明结构体
var student1 Student
//初始化结构体
student1.name = "lisi"
student1.age = 12
student1.address = "北京市廊坊区"
//声明的同时进行初始化
student2 := Student{"王五", 12, "廊坊区广阳区"}
fmt.Println(student1)
fmt.Println(student2)
//声明结构体指针
var student3 *Student
student3 = &student1
fmt.Println(student3)
//使用new的方式
// =====new 声明出来的对象是一个指针类型 指针类型的值是地址,给指针赋值 必须是地址
// =====两个指针类型的变量可以直接赋值
student4 := new(Student)
student4 = &student1 //给指针赋值 必须是地址
fmt.Println(student4)
student5 := new(Student)
student5 = student4
fmt.Println(student5)
}
//创建一个结构体
type Student struct {
name string
age int32
address string
}
输出:
Hello World!
{lisi 12 北京市廊坊区}
{王五 12 廊坊区广阳区}
&{lisi 12 北京市廊坊区}
&{lisi 12 北京市廊坊区}
&{lisi 12 北京市廊坊区}