iVar wird nicht erkannt, wenn mein eigener Getter & Setter deklariert wird [duplicate]

Mögliche Duplikate:
Eigenschaft funktioniert nicht mit Getter AND Setter

Dies ist das Problem, vor dem ich stehe: Ich verwende iOS 6. Ich deklariere eine Eigenschaft in der Header-Datei:

@property (nonatomic) CGFloat scale;

Dann erstelle ich in der Implementierung meinen eigenen Getter / Setter wie folgt:

#define DEFAULT_SCALE 0.90    

- (void)setScale:(CGFloat)scale
{
    if(_scale != scale) {
        _scale = scale;
        [self setNeedsDisplay];
    }
}

- (CGFloat) scale
{
    if(!_scale) {
        return DEFAULT_SCALE;
    } else {
        return _scale;
    }
}

Das Problem ist, dass _scale vom Compiler nicht erkannt wird. Ich erhalte die Fehlermeldung "Verwendung des nicht deklarierten Bezeichners '_scale'. Wenn ich den Getter oder den Setter entferne, funktioniert das, aber ich kann nicht beide behalten. Wenn ich das tue, muss ich hinzufügen@synthesize scale = _scale um den Fehler zu vermeiden. Kann mir jemand erklären warum?

Vielen Dank

Antworten auf die Frage(2)

Ihre Antwort auf die Frage