微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swift中的指针:UnsafeMutableBufferPointer的目的

目前正在寻找快速指针.

UnsafePointer和UnsafeMutablePointer提供指向字节的指针.通过使用指针运算,您可以访问其余的字节.

可以使用具有endindex参数的UnsafeMutableBufferPointer完成类似的操作.那么在访问例如NSData中的字节时,使用UnsafeMutableBufferPointer而不是UnsafeMutablePointer的优点/区别是什么?

解决方法

UnsafeMutablePointer< T>用于访问T类型的单个元素.它的接口设计用于访问单个标量值.

另一方面,UnsafeMutableBufferPointer< T>被设计为访问存储在连续的存储器块中的类型T的一组元素.其界面设计用于访问范围的各个元素,并且还用于将整个集合视为单个单元(例如生成方法).

如果访问NSData中的字节,仅使用UnsafePointer是不够的,因为您需要知道数据的长度.相反,单个UnsafeBufferPointer足以表示数据,因为它提供了初始位置和元素数量.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐