Kapitel 11. Generische und funktionale Entwicklung

Closures

Closures sind ein Konzept, das mittlerweile in vielen modernen Sprachen verbreitet ist. In neuerem Objective-C heißen sie Blocks; in C++11, in Java ab Version 8 und in funktionalen Programmiersprachen wie Haskell nennt man sie Lambda-Ausdrücke oder anonyme Funktionen. Die Details variieren, aber grundlegend ist immer die Überlegung, dass man einen Block Funktionalität, also eine Sammlung von Befehlen, hin und wieder gerne als Parameter an eine andere Funktion übergeben würde, ohne extra eine externe Hilfsfunktion zu schreiben.

Sehen wir uns das anhand eines fiktiven Beispiels an, das in Listing 11.1 beginnt.

// setze jedes Element des Arrays arr auf den Wert value func setzeElementInArray(inout ...

Get Durchstarten mit Swift now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.