şükela:  tümü | bugün soru sor
  • ing. dolaylı açılan opsiyonel. swift*'te opsiyonel tipleri deklare ederken sonuna soru işareti yerine ünlem işareti koyarsanız elde edersiniz. örn:

    var a: int? // standart opsiyonel

    opsiyonel bir değişken tanımlar ama her seferinde opsiyonelin içindeki değeri dışarı çıkarmanız, yani onu ambalaj açar gibi açmanız gerekir. hammaliye gibi kulağa gelse de bu tarz kullanımın avantajı ise değerin nil barındırıp barındırmadığını kontrol etme imkanı sunmasıdır.

    oysa:

    var a: int! // dolaylı yoldan açılan opsiyonel

    şeklinde deklare ederseniz aynı opsiyonel değeri hiç unwrap etmeden kullanma imkanınız olur. sadece tek probleminiz eğer değer gerçekten nil barındırıyorsa ve unwrap etmeye kalkarsanız uygulamanız çakılacak olması olabilir. o yüzden bu şekilde deklare edilen değişkenlerin erişim esnasında hiç nil değeri almayacağından emin olmanız gerekir.

    iboutlet'lerde pek sık kullanılır.