Рассмотрим этот код:Имеет ли смысл иметь необязательную слабую ссылку?
internal weak var someObj: SomeClass? = TheObject.Exists().Somewhere.obj
Это кажется вполне разумным. Ссылка слабая - то есть мы не имеем никакого контроля над временем жизни некоторых Obj - и поэтому в какой-то момент ссылка может стать нулевой. Даже SomeClass!
можно считать приемлемым, если вы знаете о возможном риске. Теперь, как об этом:
internal weak var anotherObj: AnotherClass = aDifferent.Source().ofObjects.obj
компилятор даже не выдает предупреждение. Слабо говорит, что ссылка может указывать на объект, который был освобожден. С другой стороны, необязательный тип AnotherClass
на самом деле не позволяет этого. Может ли такой код быть оправданным?
Компиляторы жалуются на ошибку: «« слабая »переменная должна иметь необязательный тип« –
По какой-то причине со мной не случилось. Я попробую снова. –