我已经四处寻找并且没有找到另一个这样做的例子但是我无意中发现我能够通过简单地将该片段传递给接受切片并返回该切片的函数来从另一个切片的片段创建切片切片。
示例:
package main
import "fmt"
func makeSliceFrom(s []int) []int {
return s
}
func main() {
s := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
newS := makeSliceFrom(s[1:7])
fmt.Println(newS)
}
我不是在问这是否有效,因为我知道它有效并且似乎运作良好,我问这是否得到支持或者有一些我不知道的无法预料的成本。我没有看到任何这样做的例子似乎很奇怪。
答案 0 :(得分:0)
可以使用名为make的内置函数创建切片,该函数具有签名
func make([]T, len, cap) []T
推荐阅读: