大华突击电话面试 golang
- 数组和切片的区别
- 向一个 nil 的切片中 append 数据可以吗
- 切片的复制过程(在这反复询问,各种各样的场景)
- 想要在不影响原先切片的情况下如何拿到一个只修改索引位的新切片(比如说一个切片是 s := []int{1,2,3,4}, 取一个切片是 s1 := s[:1] ,如何修改 s1[0] = 5 不影响 s)
- 还是上面这种情况,如果在复制好 s1 之后 把 s 删掉,会发生内存泄漏吗?
- 这种情况要怎么做才能不发生内存泄漏
- 内存泄漏有哪些场景
- make 和 new 的区别
- make 一个切片的时候三个参数分别是什么意思,会出现容量比长度小的情况吗
- chan 底层原理是什么样的
- chan 有缓冲区和无缓冲区的区别
- 如果chan 在有缓冲区的情况下缓冲区满了不想要后续的数据了怎么做
- go语言的函数可以设置多个参数是什么原理???
- 协程如何关闭
- 了解哪些同步原语
- waitgroup 的底层原理是什么
- 结构体中的tag 有什么作用
- 如果想要设计一个单生产者 和多消费者的场景怎么做,多消费者需要同时消费到单个生产者生成出来的内容(涉及到了观察者模式)
- 如何判断一个结构体的接口是否实现,举了一个animal的例子,cat,dog的基类啥的,不是很懂。。。
总共面了二十分钟,最后两个问题回答的不好,然后就结束了,嗯,应该是凉了。。。
#24届软开秋招面试经验大赏##golang后端##后端八股#