乐趣区

关于ios:IOS-如何快速的将数组每个元素设置成0

惯例做法当然是遍历。

var arr = [1, 2, 3, ...]
for i in arr.indices {arr[i] = 0
}

惯例做法没有问题,然而有时候太慢了,咱们须要更快的办法。侥幸的是,IOS 提供了 vDSP 框架。

能够在外面找到 Vector Clear and Fill Functions 好家伙,这不就是咱们所须要的吗?

func vDSP_vfilli(UnsafePointer<Int32>, UnsafeMutablePointer<Int32>, vDSP_Stride, vDSP_Length)
// Populates an integer vector with a specified scalar value.

具体是这样:

var arr: [Int32] = [1, 2, 3, ...]
var fill: Int32 = 0 // 待填充的数,其余的也行
vDSP_vfilli(&fill, &arr, vDSP_Stride(1), vDSP_Length(arr.count))

如果以上内容对你有所帮忙,请在这些平台上关注我吧,谢谢。o(~▽~)d

退出移动版