根据 standardml.org 报告的The ArraySlice structure(我没有要检查的SML 97手册,只有SML 90 PDF手册),ArraySlice.copyVec
获取一个Array.array
参数作为目标,而不是ArraySlice.slice
作为一个(或至少是我)直觉期望的参数。当然,可以使用ArraySlice.base
分别获取dst
和di
参数的数组和索引到copyVec
。令人惊讶的是,来自copyVec
的{{1}}甚至没有ArraySlice
类型的单个参数。幸运的是,它的ArraySlice.slice
参数类型为src
,直观上是预期的。
VectorSlice.slice
的理由是什么?为什么不将ArraySlice.copyVec
作为ArraySlice.slice
?
答案 0 :(得分:0)
据推测,因为这需要额外的约束,即两个切片具有相同的长度(或者至少dst
大于src
)。当前的API没有这样一个额外的条件。此外,使用它可能会更麻烦。