ленивый с внутренней ссылкой

#swift #instance #lazy-evaluation

#swift #экземпляр #отложенная оценка

Вопрос:

В Swift 3.0 мне нравится использовать структуру, которая заполняется только при необходимости.
Итак, у меня есть :

 class Classname : NSObject, NSCopying, Comparable { ...

    lazy var exif : EXIFData = {
        return EXIFData(url: globalURL as CFURL)
    }()
  

Если я использую внешний var в качестве параметра для EXIFData () «globalURL», он компилируется.
Если я использую элемент экземпляра, компилятор сообщает мне, что он не может быть использован для этого типа класса.

Что я сделал и есть ли обходной путь?

Ответ №1:

О, я понял. Мне нужен только self. перед элементом экземпляра.