24.4 Werte abfangen

Bisher haben wir ein wesentliches Feature von Blöcken ignoriert: Sie enthalten einen Schnappschuss der Werte von Variablen, die bei der Deklaration des Blocks im Geltungsbereich vorhanden sind. Ich werde unser Beispiel auf verschiedene Weise vereinfachen. Zuerst werde ich die NSNumber durch NSInteger ersetzen, um die ständige Konvertierung zu eliminieren. Wir haben damit gezeigt, wie und warum man Blöcke nutzt, um eine Operation in einen Wrapper zu übergeben, aber jetzt stehen sie uns eher im Weg. Darüber hinaus wollen wir nicht einfach zwei Zahlen miteinander multiplizieren, sondern einen Wert verwenden, der in einer lokalen Variable definiert ist, die in dem Geltungsbereich liegt, in dem auch der Block definiert ist.

Blocks/SimpleCalc5/SimpleCalcAppDelegate.m ...

Get Cocoa-Programmierung now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.