Instance Method インスタンスメソッド

move()

Retrieves and returns the referenced instance, returning the pointer’s memory to an uninitialized state. 参照されたインスタンスを取ってきて返します、ポインタのメモリを初期化されない状態へ戻します。

Declaration 宣言

func move() -> Pointee

Return Value 戻り値

The instance referenced by this pointer. このポインタによって参照されるインスタンス。

Discussion 解説

Calling the move() method on a pointer p that references memory of type T is equivalent to the following code, aside from any cost and incidental side effects of copying and destroying the value: move()メソッドを、型Tのメモリを参照するポインタp上で呼び出すことは、その値のコピーおよび破棄のあらゆるコストと付随する副作用を除いて、以下のコードと同等です。


let value: T = {
    defer { p.deinitialize(count: 1) }
    return p.pointee
}()

The memory referenced by this pointer must be initialized. After calling move(), the memory is uninitialized. このポインタによって参照されるメモリは、初期化されなければなりません。move()の呼び出しの後、メモリは初期化されない状態です。