Wpis z mikrobloga

#swift #iosdev

Jak to jest z zamykaniem w swift? Chodzi mi o ;
Jeżeli będę używał (przyzwyczajenie z nauki c++/javy) to jest to jakiś mega błąd? Bo widzę że xcode puszcza

I mógłby ktoś wytłumaczyć łopatologicznie po co wszędzie się wstawia !(wykrzyknik)

Na przykład: currentNumber = currentNumber * 10 + Float(Int(sender.titleLabel!.text!)!)

jest titleLabel i wykrzyknik
text wykrzyknik
)wykrzyknik)
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Defuzer: a średniki źle wyglądają, nie używaj ich wcale bo kłóci się to z style guidami. A optionals to podstawa, musisz ogarnąć jak zaczynasz cokolwiek w swifcie pisać ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@Defuzer, @Sacramoni
Panowie: ? oraz ! jest do typu (dokładniej enuma) optional. Jest to syntactic sugar dla https://developer.apple.com/library/tvos/documentation/Swift/Reference/Swift_Optional_Enumeration/index.html

Optional nie wpływa na to czy typ jest określony (bo jest określony, np Int!) tylko czy ma wartość czy nie ("nil").
Ogólnie używanie ! jest jak wsadzanie ręki do maszynki do mielenia mięsa przed sprawdzeniem czy ona chodzi - używajcie tego tylko, gdy nie możecie inicjalizować wartości w konstruktorze (np. outlety z Interface Buildera), ew w paru innych wypadkach - ale praktycznie zawsze lepiej wykorzystać typ nie-optional
  • Odpowiedz