すでに数回、私はプロパティを作りたいと思っていました。それはnonatomic
同時にreadonly
です。
これには、ゲッターをオーバーライドして、インスタンスがすでに作成されているかどうかを確認できるという利点があります。そうでなければ、私はそれを簡単に作成することができます。
同時に、上書きから保護することができます。
.h
@property (strong, readonly, nonatomic) Foo *bar;
.m
- (Foo *)bar {
if (!_bar) {
_bar = [[Foo alloc] init];
}
return _bar;
}
私がこれを行うときはいつでも、コンパイラは私のためにインスタンス変数を作成しないので、_bar
存在しません。
なんで?readonly
nonatomic
プロパティを作成するにはどうすればよいですか?