-1
Go是否允许函数向签名添加数组长度约束,或者长度是否仍然需要运行时检查?Can Go函数可以指定特定的数组长度吗?
Go是否允许函数向签名添加数组长度约束,或者长度是否仍然需要运行时检查?Can Go函数可以指定特定的数组长度吗?
对于数组而言,它是可能的,它是必需的。对于切片来说是不可能的。
package main
import (
"fmt"
)
func main() {
d := [2]int{1, 2}
fmt.Println(sum(d))
}
func sum(data [2]int) int {
return data[0] + data[1]
}
阵列DO有修复长度。另一方面,切片不会,而且您无法通过函数签名强制切片长度。 –
其实有一种方法。可能的重复[是否有可能触发编译时错误与自定义库在golang?](http://stackoverflow.com/questions/37270743/is-it-possible-to-trigger-compile-time-error-with-定制库中-golang/37271129#37271129) – icza