NSCopying


継承:なし

従属:なし

フレームワーク:OS X 10.0 以降の Foundation。関連項目


概要


NSCopying プロトコルは、オブジェクトの機能的コピーを提供するためのメソッドを宣言します。"コピー" の正確な意味は、クラスによって変わりますが、コピーは、コピーが行われた時点で、元と同じ値を持つ機能的に独立したオブジェクトでなければなりません。NSCopying で生成されたコピーは、暗黙のうちに送信者によって保持され、それを解放する責任があります。


NSCopying は一つのメソッド、copyWithZone: を宣言しますが、コピーは、一般的にコンビニエンスメソッド copy で呼び出されます。copy メソッドは、NSObject から継承するすべてのオブジェクトに対して定義され、単純にデフォルトのゾーンで copyWithZone: を呼び出します。


次のようにこのプロトコルを実装するためのオプションがあります:


サブクラスが、そのスーパークラスから NSCopying を継承し、追加のインスタンス変数を宣言している場合、サブクラスは最初のスーパークラスの実装を呼び出し、独自のインスタンス変数を処理するために copyWithZone: をオーバーライドしなければなりません。


タスク


コピー


- copyWithZone: 必須


受信者のコピーである新しいインスタンスを返します。


宣言

<< SWIFT >>

func copyWithZone(_ zone: NSZone) -> AnyObject

<< OBJECTIVE-C >>
- (id)copyWithZone:(NSZone *)zone


パラメーター

zoneこのパラメーターは無視されます。メモリーゾーンはもはや Objective-C では使われません。

議論

返されたオブジェクトは、それを解放する責任がある送信者によって暗黙的に保持されます。"可変対不変" は、受信オブジェクトに適用された場合、返されるコピーは不変です。そうでない場合は、コピーの正確な性質は、クラスによって決定されます。


利用可能

OS X 10.0 以降で利用可能。


NSMutableCopying.html

以下も見よ

– mutableCopyWithZone: (NSMutableCopying protocol)

– copy (NSObject class)







次:文書改定履歴
目次
Xcode 9 の新機能

  • NSCopying
    概要
  • タスク
  • コピー
  • copyWithZone: 必須
    文書改定履歴












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)












    トップへ(NSCopying)