0

iOS プロジェクトから取得した単純な Object-C コード スニペットがあります。

@interface store (private)

@end

@implementation store (private)

@end

@implementation store

私の質問は次のとおりです。

  1. (private)コード、プライベート インターフェイス、および実装での意味は何ですか?

  2. 最後の行@implementation storeはどういう意味ですか? 空の公開実装? なしで@end

  3. 上記のコードには 2 つ@implementation storeあるということは、objective-c が単一のインターフェイスに対して複数の実装をサポートしていることを意味しますか?

4

3 に答える 3

0
  1. これはObjective-C のカテゴリであり、既存のクラスにコードを追加できます。括弧内の名前は任意です。
  2. これは空の実装ですが、. なしでコンパイルされることに驚いています@end。デフォルトのコンパイラ設定で xcode を試すと、エラーが発生します。明確にするためだけに、@end.
  3. 最初の実装は、最初の実装へのアドオンです。これを使用して、大きなクラスを個別のモジュールに分割したり、インターフェイスの一部を一部で使用可能にして他の部分では使用できないようにしたり、最も便利で一般的な方法として、SDK クラスにメソッドを追加したりできます。
于 2013-04-18T14:18:12.320 に答える