1

次の構文を使用したコードのサンプルがいくつかあることに気付きました。

@synthesize myProp = _myProp;

ただこれをするのとどう違うのですか?

@synthesize myProp;

そして、コードの後半で、次のようにして呼び出します。

self.myProp = xyz;

なぜこのように呼ばないのですか?

mpProp = xyz;

誰かが違いを説明できますか?

4

2 に答える 2

3

これを行う主な利点は、プロパティにアクセスするときにゲッターとセッターを使用していることです。これは次の理由で重要です。

  • セッターはメモリ セマンティクスを自動的に管理し、オブジェクト参照を自動的に保持および解放します。
  • KVO セマンティクスを自動的に取得します。これは、いくつかの異なるコンテキストで重要です

最初の理由は ARC ではそれほど重要ではありませんが、後者は依然としてかなり大きな利点です。

于 2013-06-14T00:31:36.190 に答える