Gdy ustawię wartość firstThing
domyślną, nil
to zadziała, bez wartości domyślnej nil
pojawia się błąd, że podczas wywoływania funkcji brakuje parametru.
Wpisując Int?
, myślałem, że jest to opcjonalne z domyślną wartością nil
, mam rację? A jeśli tak, dlaczego nie działa bez = nil
?
func test(firstThing: Int? = nil) {
if firstThing != nil {
print(firstThing!)
}
print("done")
}
test()
func test(firstThing: Int = 4)
: nie-Optional
parametr z wartością domyślną.Optional
Typ (czyli to, co?
w nazwie typu rozszerza się do) to typ wartości; „parametr opcjonalny” to niefortunna nazwa parametru, który może być obecny lub nie w wywołaniu funkcji, niezależnie od jego typu.