timeSignature などの整数変数を .h ファイルで宣言し、setter/getter メソッドのペアを合成しました。
.h:
@interface Metronome : NSObject {
int timeSignature;
}
@property (nonatomic) int timeSignature;
.m:
@synthesize timeSignature;
セッターメソッドをオーバーライドしたい: ユーザーが新しい値を設定すると、新しい値に変更するだけでなく、何か他のことを行います:
- (void) setTimeSignature:(int)timeSignature {
self.timeSignature = timeSignature; //hides instance variable warning at this line
[self doesSomethingElse];
}
問題は、ローカル変数とインスタンス変数が同じ名前になっていることです。
どうすればこれを回避できますか?