Go知识点总结

2023-04-25

Go中的数据类型

Go中的基本数据结构是整型、浮点数、复数、布尔型、字符串、常量,复合数据类型是数组、slice、Map、结构体。

Go有引用变量和引用传递吗?

引用变量是給变量起了个别名,一个变量的引用和它本身是一个东西,他们的地址也是一样的。

结论:Go中没有引用变量和引用传递。 Go中的两个变量不会有相同的内存地址,但是两个变量可以指向同一个内存地址。而map其实是一个指针,指向一个hmap。

string的底层

Golang string

Map底层 & sync.Map

Golang Map

slice底层 & 和数组的区别

Golang slice

channel

channel底层如何实现

读取关闭的channel会发生什么?

Golang channel

defer

defer的先后顺序

经过测试,函数体内多个defer语句的执行顺序与声明顺序相反!

panic

Golang Panic

goroutine调度机制

GMP模型

Golang GMP模型

GC

Golang GC机制

select

评论