1

我有一个 C 指针数组,我想从中获取 Swift 中的数据。但是,我需要获取具有特定步幅/步长且没有 for 循环的数据以保持高效。

要获取所有数据,我会这样做:

let dataStrided = Array(UnsafeBufferPointer(start: dataPtr, count: arraySize))

但我不知道如何获得未跨步的数据。我会考虑使用 Swift 函数 stride,但以下(当然)不起作用:

let dataUnstrided = dataStrided[0.stride(to: arraySize-stepSize, by: stepSize)]

是否有一种有效的方法来做到这一点并避免 for 循环?

4

0 回答 0