英文:
Can Go functions specify a particular array length?
问题
Go允许函数在签名中添加数组长度约束吗,还是长度仍然需要在运行时进行检查?
英文:
Does Go allow functions to add array length constraints to the signature, or would length still require a runtime check?
答案1
得分: 2
对于数组来说,这不仅是可能的,而且是必需的。对于切片来说,这是不可能的。
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]
}
链接:https://play.golang.org/p/-VMxyDvwUt
英文:
For arrays it is more than possible, it is required. For slices it is impossible.
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]
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论