このようなプロパティを宣言すると、次のようになります。
@property(nonatomic,weak) Foo *someProperty;
次に、次のようなカスタムセッターを宣言します。
- (void)setSomeProperty:(Foo *)someProp {
_someProperty = someProp;
//...more custom stuff
}
これに何か問題がありますか?つまり、コンパイラは__weak修飾子を使用して_someProperty ivarを自動的に合成する必要があるため、上記のセッターで割り当てを行うだけで十分です。