當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Swift UnsafeRawBufferPointer init(rebasing:)用法及代碼示例

用法一

初始化器

init(rebasing:)

在與給定原始緩衝區切片相同的內存上創建原始緩衝區,索引重新設置為零。

聲明

init(rebasing slice: Slice<UnsafeRawBufferPointer>)

參數

slice

要變基的原始緩衝區切片。

詳述

新緩衝區表示與切片相同的內存區域,但其索引從零開始,而不是在原始緩衝區中切片的開頭。以下代碼創建 slice ,一個覆蓋現有緩衝區實例的一部分的切片,然後將其變基為新的 rebased 緩衝區。


let slice = buffer[n...]
let rebased = UnsafeRawBufferPointer(rebasing: slice)

執行此代碼後,以下情況屬實:

  • rebased.startIndex == 0

  • rebased[0] == slice[n]

  • rebased[0] == buffer[n]

  • rebased.count == slice.count

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

用法二

初始化器

init(rebasing:)

在與給定原始緩衝區切片相同的內存上創建原始緩衝區,索引重新設置為零。

聲明

init(rebasing slice: Slice<UnsafeMutableRawBufferPointer>)

參數

slice

要變基的原始緩衝區切片。

詳述

新緩衝區表示與切片相同的內存區域,但其索引從零開始,而不是在原始緩衝區中切片的開頭。以下代碼創建 slice ,一個覆蓋現有緩衝區實例的一部分的切片,然後將其變基為新的 rebased 緩衝區。


let slice = buffer[n...]
let rebased = UnsafeRawBufferPointer(rebasing: slice)

執行此代碼後,以下情況屬實:

  • rebased.startIndex == 0

  • rebased[0] == slice[n]

  • rebased[0] == buffer[n]

  • rebased.count == slice.count

可用版本

iOS 8.0+, iPadOS 8.0+, macOS 10.10+, Mac Catalyst 13.0+, tvOS 9.0+, watchOS 2.0+

相關用法


注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 UnsafeRawBufferPointer init(rebasing:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。