İçeriğe geç

Swift @noescape kullanımı

swift

Merhabalar bu yazımda Swift dilinde Closures ile kullanılan ön eklerden biri olan @noescape ne işe yarar buna örnek vereceğim.

Swift programlama dilinde Closuresler çok değerli bir yere sahip çoğu programlama dilindede olan bir özellik aslında. Parametrelere fonksiyon yazma olayı.

Daha önceki bir yazımda @autoclosure ekinden bahsetmiştim.

Aşağıdaki verdiğim örnekte self. şeklinde değişkeni çağırmamız gerekirken self. çağırmadan kullanabilmekteyiz @noescape sayesinde. Ve birde performans açısından eğer yazdığınız fonksiyon closuresini başka bi fonksiyonda çağıracaksanız @noescape kullanmanız tavsiye edilmektedir.

func foo(@noescape code:(() -> ()))
{
    return code()
}


class A {
    
    var number:Int = 0
    
    init(){}
    
    func changeNo() {
    
        foo {
            number = 999
        }
        
    
    }
    
}


var obj = A()

obj.number // 0
obj.changeNo()
obj.number // 999

 

Tarih:Swift

Bu yazı yorumlara kapalı.

Copyright © 2020 Kenan Atmaca