有没有办法在 Go 中分配一个未初始化的切片?一个常见的模式是创建一个给定大小的切片作为缓冲区,然后只使用它的一部分来接收数据。例如:
b := make([]byte, 0x20000) // b is zero initialized
n, err := conn.Read(b)
// do stuff with b[:n]. all of b is zeroed for no reason
当分配大量缓冲区时,此初始化可以累加,因为规范规定它将在分配时默认初始化数组。
函数式编程
慕容森
相关分类