The type T
to bind the memory to.
この型T
へとメモリを束縛することになります。
bindMemory(to:capacity:)
Availability
- iOS 8.0+
- iPadOS 8.0+
- macOS 10.10+
- Mac Catalyst 13.0+
- tvOS 9.0+
- watchOS 2.0+
- Xcode 8.0+
Technology
- Swift Standard Library Swift標準ライブラリ
Declaration 宣言
@discardableResult func bindMemory<T>(to type: T.Type, capacity count: Int
) -> UnsafeMutablePointer
<T>
Parameters パラメータ
type
count
The amount of memory to bind to type
T
, counted as instances ofT
. 型T
へと束縛するメモリの量、T
のインスタンスとして数えられます。
Return Value 戻り値
A typed pointer to the newly bound memory. The memory in this region is bound to T
, but has not been modified in any other way. The number of bytes in this region is count * Memory
.
新しく束縛されたメモリへの型付ポインタ。この領域の中のメモリは、T
へと束縛されます、しかし他のいかなる方法においても変更されていません。この領域の中のバイト数は、count * Memory
です。
Discussion 解説
Use the bind
method to bind the memory referenced by this pointer to the type T
. The memory must be uninitialized or initialized to a type that is layout compatible with T
. If the memory is uninitialized, it is still uninitialized after being bound to T
.
bind
メソッドを使用して、このポインタによって参照されるメモリを型T
へと束縛してください。メモリは、未初期化であるかT
とレイアウト互換でなければなりません。メモリが未初期化であるならば、それはT
に束縛された後も依然として未初期化です。
In this example, 100 bytes of raw memory are allocated for the pointer bytes
, and then the first four bytes are bound to the Int8
type.
この例では、100バイトの生のメモリがポインタbytes
に対して割り当てられて、それから最初の4バイトがInt8
型に束縛されます。
After calling bind
, the first four bytes of the memory referenced by bytes
are bound to the Int8
type, though they remain uninitialized. The remainder of the allocated region is unbound raw memory. All 100 bytes of memory must eventually be deallocated.
bind
を呼んだ後、bytes
によって参照されるメモリの最初の4バイトはInt8
型に束縛されます、もっともそれらは未初期化のままであるけれども。割り当てられた領域の残りは、生のメモリに束縛されません。メモリの100バイトすべては、そのうち割り当てられなければなりません。
Warning 警告
A memory location may only be bound to one type at a time. The behavior of accessing memory as a type unrelated to its bound type is undefined. あるメモリ位置は、一度に1つの型に束縛されるだけでしょう。メモリにそれの束縛型と関係ない型でアクセスすることの挙動は未定義です