Size: a a a

2022 January 29

IM

Igor Milk in SwiftBook
почему в одной функции требуют self в другой нет. И что вобще делает оператор self &
источник

M

Max in SwiftBook
Потому что у тебя self внутри замыкания
источник

IM

Igor Milk in SwiftBook
а что значит это ?
источник

M

Max in SwiftBook
источник

M

Max in SwiftBook
Enjoy
источник

IM

Igor Milk in SwiftBook
открыл смотрю
источник

b

bodich in SwiftBook
Потому что оно замыкание escaping, а другое нет. Поскольку non-escaping замыкание не может выйти за пределы скоупа функции (например передано в другой поток или другому объекту), то и self захватывать не нужно.
источник

IM

Igor Milk in SwiftBook
Захват значений понимаю.
А что имеет ввиду захват self
источник

b

bodich in SwiftBook
Взятие ссылки на экземпляр SomeClass, из которого вызван метод doSomething
источник

IM

Igor Milk in SwiftBook
То есть self ( я) от класса явное указание захвата ( типо если будет это значение в другой области видимости нужно дать понять явно какое значение нужно захватить ?
источник

IM

Igor Milk in SwiftBook
Ого
источник

IM

Igor Milk in SwiftBook
Вкурил
источник

IM

Igor Milk in SwiftBook
Спасибо огромное 👍
источник

IM

Igor Milk in SwiftBook
источник

IM

Igor Milk in SwiftBook
источник

b

bodich in SwiftBook
Да, self это ссылка на самого себя, объект владелец метода, из которого self захвачен.
Но важно почему в non-escaping это не нужно. Потому что escaping closure само по себе уже объект, на который есть ссылка, и он участвует в ARC.
А передавая проперти в non-escaping мы никогда не выйдем за пределы скоупа, указатели не передаются в другой объект.
источник

IM

Igor Milk in SwiftBook
я скрины твои сделал разместил в заметках.
источник

b

bodich in SwiftBook
Ну я так, от себя корявенько объяснил, может в какой статье получше распишут, почитай еще другими словами объяснение…
источник

IM

Igor Milk in SwiftBook
еще такой вопрос.
источник

IM

Igor Milk in SwiftBook
функция инкремент захватила значение, когда глобальная функция завершит свою работу то захваченная переменная ( не будет удаляться (то есть будет ссылка на нее из замыкания?) фактически это свойство будет сущетсовать там но удаляться не будет. Но из из скопа я не смогу напрямую к нему обратися после завершения функции. Когда я ызову замыкание замыкание звахтило ссылоку на него
источник