2012-04-30 4 views
4

私は煎茶のテストとXcodeでビューコントローラをテストするために推奨される方法は、iOSでテストするときに「弱い」と指定するのはなぜですか?

@property (nonatomic, readwrite, weak) MyMainViewController* mainViewController; 

なぜだけではなく、

@property (nonatomic, strong) MyMainViewController* mainViewController; 

でそれをインスタンス経由であることに気づきましたか?

+1

この利用状況はどこで確認できましたか? –

答えて

2

デフォルトであるため、readwriteは必ずしも必要ではありません。強いものと弱いものとでは、弱いものを使用する主な理由は、基準サイクル(すなわち、互いに対する強い参照を有する2つのオブジェクトが決して割り当て解除されないようにする)を回避することである。

1

言い換えれば、弱い参照は、保持サイクルを回避しようとするときに便利です。

弱い参照を探している場合は、this postをMike Ashさんが読むことを強くおすすめします。弱参照をゼロにすることと弱参照を非ゼロにすることの違いを理解することは重要です。

関連する問題