Zamknięcia jako parametry

lis 4, 2021
admin

Ponieważ zamknięcia mogą być używane tak samo jak łańcuchy i liczby całkowite, możesz przekazywać je do funkcji. Składnia tego może zranić twój mózg na początku, więc zrobimy to powoli.

Po pierwsze, oto nasze podstawowe driving() domknięcie ponownie

let driving = { print("I'm driving in my car")}

Jeśli chcielibyśmy przekazać to domknięcie do funkcji, aby mogło być uruchomione wewnątrz tej funkcji, określilibyśmy typ parametru jako () -> Void. Oznacza to, że „nie przyjmuje żadnych parametrów i zwraca Void” – sposób Swifta na powiedzenie „nic”.

Możemy więc napisać funkcję travel(), która akceptuje różne rodzaje akcji podróżnych i drukuje wiadomość przed i po:

func travel(action: () -> Void) { print("I'm getting ready to go.") action() print("I arrived!")}

Możemy teraz wywołać ją za pomocą naszego driving zamknięcia, jak poniżej:

travel(action: driving)

SPONSOROWANE Czy masz dość marnowania czasu na debugowanie swojej aplikacji Swift? Instabug’s SDK jest tutaj, aby pomóc Ci zminimalizować czas debugowania poprzez dostarczenie Ci kompletnych szczegółów urządzenia, logów sieciowych i kroków odtwarzania z każdym raportem błędu. Wszystkie dane są dołączane automatycznie. Konfiguracja wymaga tylko jednej linijki kodu. Rozpocznij darmową wersję próbną teraz i wysyłaj aplikacje wysokiej jakości!

Wypróbuj za darmo

Sponsoruj Hacking with Swift i dotrzyj do największej na świecie społeczności Swift!

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.