Swift willSet ve didSet amacı nedir? | Netgez.com
SORU
3 HAZİRAN 2014, Salı


Swift willSet ve didSet amacı nedir?

Swift has bir özellik bildirimi sözdizimi C çok benzer#'s:

var foo : int {
    get { return getFoo() }
    set { setFoo(newValue) }
}

Ancak, aynı zamanda willSet didSet eylemler. Bu önce ve pasör denir sonra, sırasıyla denir. Onların amacı, sadece ayarlayıcı içinde aynı kod olabilir o ne düşünüyor?

CEVAP
3 HAZİRAN 2014, Salı


willSet didSet anahtar nokta hala bir şey yapacak otomatik depolama ile bir özellik oluşturmak için mümkün olduğunu ya da ayarlandıktan sonra gibi görünüyor. Aşağıdaki sınıf örneği için:

class Foo
{
    var propertyChangedListener : (Int, Int) -> Void = {
        println("The value of myProperty has changed from \($0) to \($1)")
    }

    var myProperty : Int = 0 {
        didSet { propertyChangedListener(oldValue, self.myProperty) }
    }
}

myProperty otomatik depolama vardır, okunabilir ve yazılı, ama yine de açık destek mağaza kalmadan propertyChangedListener çağırabilir. Bu get 11* *anahtar kelimeler ile mümkün olmaz.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ★ByScrapi★ Designs

    ★ByScrapiâ

    27 AÄžUSTOS 2013
  • Andrea Lewis

    Andrea Lewis

    14 Mart 2013
  • DetroitBORG

    DetroitBORG

    29 Temmuz 2008