[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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值