我想编写一个可以接受固定长度数组的函数,但是不同的数组具有不同的长度。
我知道我可以使用arr [:]传递切片(该函数将接受[] T),但是还有另一种方法,也许更有效?
我使用的结构是固定长度数组(出于文档目的),因此在声明时到处使用切片对于我而言并不是最佳选择。
答案 0 :(得分:3)
没有办法传递不同大小的数组,因为数组的长度是该类型的一部分。
例如[3]int
和[2]int
是不同的类型。
在Go语言中,完全不建议使用数组,而应该使用切片(https://golang.org/doc/effective_go.html#arrays)。