文書   >   Swift   >   Swift 標準ライブラリ  >     手動でメモリ管理   >   UnsafeBufferPointer   >   subscript(_:)


サブスクリプト


subscript(_:)


バッファの要素の連続した部分範囲にアクセスします。





宣言


subscript(bounds: Range<Int>) -> Slice<UnsafeBufferPointer<Element>> { get }


パラメータ


boundsバッファのインデックスの範囲。範囲の境界は、バッファの有効なインデックスでなければなりません。


議論


アクセスされたスライスは、元のバッファが使用するのと同じ要素に同じインデックスを使用します。そのインデックスが特定の値で始まると想定する代わりに、常にスライスの startIndex プロパティを使用して下さい。


この例では、文字列のバッファからスライスを取得し、スライス内の文字列の 1 つのインデックスを検索してから、元のバッファでそのインデックスを使用しています。


let streets = ["Adams", "Bryant", "Channing", "Douglas", "Evarts"]
streets.withUnsafeBufferPointer { buffer in
    let streetSlice = buffer[2..<buffer.endIndex]
    print(Array(streetSlice))
    // Prints "["Channing", "Douglas", "Evarts"]"
    let index = streetSlice.firstIndex(of: "Evarts")    // 4
    print(buffer[index!])
    // Prints "Evarts"
}


注意

bounds の境界チェックは、デバッグモードでのみ実行されます。



関連





プロトコルから

















トップへ












トップへ












トップへ












トップへ












トップへ
目次
Xcode の新機能

  • 言語:Swift
  • SDK
  • Xcode 10.0+

  • フレームワーク
  • Swift 標準ライブラリ
  • 宣言
  • パラメータ
  • 議論
  • 関連












  • トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ