以下の例では、abcを弱参照として定義しました。
@interface myClass : NSObject
@property (nonatomic, weak) Line *abc
@end
- (id)init
{
abc = [[Line alloc] init]
}
誰も強く指さないので、abcをランダムに割り当て解除できますか?Objectivecのような言語で物事がどのように割り当て解除されるかを理解するのに苦労しています。ガベージコレクターがないので、何がそれをメモリから正確に削除しますか(単にnilに設定してdeallocと呼びますか?)
myClassがnilに設定されると、参照カウントが0のすべてのインスタンス変数でdeallocが呼び出されます。myClassがnilに設定されるまで、abcは常にメモリ内にあります。私は正しいですか?