摘要:
指针: var a *int // 指针,零值为 nil var b *int = nil // 空指针 // var c *int // 野指针,直接赋值,没有指向,报错 // *c = 222 // invalid memory address or nil pointer dereferenc 阅读全文
摘要:
结构体: type student struct { name string age int } type teacher struct { name string } func main(){ s1 := student{"aaa", 1} // 必须全部赋值 s2 := student{name 阅读全文
摘要:
map: var m map[int]string fmt.Println(m) fmt.Printf("%T\n", m) // 在字典中不能使用cap,只能用len n := make(map[int]string, 3) // map是无序的,自动扩容 n[1] = "1" n[2] = "2 阅读全文
摘要:
切片: 大小不确定的放在堆区(实际值),固定长度的在栈区(变量名:存地址) 添加切片数据的时候,地址可能发生改变,当前内存不能连续并且足够大。 扩容:<=1024 :两倍;> 1024 :每次扩容上一次的 1 / 4 引用传递 var a []int a = append(a, 1, 2, 3, 4 阅读全文