3

コンパイラがプロパティのアクセサを自動生成する方法に関するドキュメントはありますか?

カスタムアクセサーを作成する場合(合成されたアクセサーをオーバーライドする場合)、元の実装を知っておくと便利です。特に、異なる(弱い/強い/保持/コピーなど)属性を持つプロパティのアクセサの異なる実装を確認します。

4

1 に答える 1

3

コンパイラがプロパティのアクセサを自動生成する方法に関するドキュメントはありますか?

コンパイラはC関数呼び出しを追加するだけです。asmをのぞきます(例_objc_getProperty_objc_setProperty)。

カスタムアクセサーを作成する場合(合成されたアクセサーをオーバーライドする場合)、元の実装を知っておくと便利です。特に、異なる(弱い/強い/保持/コピーなど)属性を持つプロパティのアクセサの異なる実装を確認します。

実装は、 http: //www.opensource.apple.com/source/objc4/でホストされているobjcランタイムの一部として公開されてい ます。

于 2012-04-12T18:59:02.790 に答える