1.嵌套基本类型 创建新的类型---类比"class"
type People struct {
name, city string
age int8
}
2.基本使用例1
package main
import "fmt"
type student struct {
name string
age int
}
func main() {
m := make(map[string]student)
students := []student{
{name: "小王子", age: 18},
{name: "娜扎", age: 23},
{name: "大王八", age: 9000},
}
for index, val := range students {
m[val.name] = val
fmt.Println(index)
}
for index, val := range m {
fmt.Println(index, val)
}
}
package main
import "fmt"
import "unsafe"
// People def
type People struct {
Name string
Age int
}
func (p *People) String() {
fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
}
// Str definition
func (p People) Str() {
fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
}
func main() {
p := new(People)
fmt.Printf("%p\n", unsafe.Pointer(&p.Name))
p.Str()
}
3.初始化及定义
package main
import "fmt"
type Persion struct {
name string
sex byte
age int
}
func main() {
var man Persion = Persion{"Alex", 'f', 18}
fmt.Println(man)
man2 := Persion{name: "隔壁老赵", age: 21}
fmt.Println(man2)
}