2015-04-09 12 views

Odpowiedz

1

Dokumenty potwierdzają to ("Możesz dodać obserwatorów właściwości do wszystkich przechowywanych właściwości, które definiujesz, oprócz leniwych przechowywanych właściwości" (source)), ale nie zapewniają one uzasadnienia.

Przypuszczam, że obserwatorzy nieruchomości muszą mieć dostęp do nieruchomości, którą obserwują, aby dołączyć się jako obserwator, chociaż nie "czują się" tak, jak ty. Ponownie, to tylko przypuszczenie, ale jeśli mam rację, to oczywiście posiadanie leniwej własności jest nieistotne. Właściwości lazy są obliczane przy pierwszym dostępie i jeśli użycie obserwatora uzyskuje dostęp do tej właściwości, to zostanie obliczone natychmiast, co całkowicie zniszczy jej cel.

+0

Mechanizm obserwatora właściwości w Swift jest całkowicie odrębny i różni się od obserwacji KVO. – zneak

+0

@zneak, tak, myślałem, że jasno to wyjaśniłem, usunę ten przykład, aby wyeliminować jakiekolwiek zamieszanie. – Firo

Powiązane problemy