Size: a a a

2021 May 10

АЧ

Антон Чехов... in SwiftBook
Если ты создашь класс, внутри переменную и уже будешь это захватывать — то тогда у тебя будут новые значения выводится
источник

Э

Эдуард in SwiftBook
Почему тогда клоужер видит что переменная объявлена, что она типа Int ( так как нули вывел), но не видит ее инициализацию ?
источник

Э

Эдуард in SwiftBook
хотя объявлена и проинициализирована на одной строке
источник

АЧ

Антон Чехов... in SwiftBook
Ну тут некая магия свифта
Если не ошибаюсь — если ты сейчас перед объявлением а объявиш другую переменную и больше ничего не будешь трогать — всё сломается

Но это не точно
источник

Э

Эдуард in SwiftBook
хз, похоже на глюк плейграунда, та как запихнул все это делов в функцию и начал ругаться
источник

C

Chezee in SwiftBook
Ты указал входной параметр, хотя его там не должно быть
источник

АЧ

Антон Чехов... in SwiftBook
Может быть
Вообще когда это всё дело глобал он будет немного по другому работать
А ты ему явно скоп задал
Ну и кложура будет nonescaping
источник

C

Chezee in SwiftBook
Здесь ты обьявил «а» выше замыкания где-то
источник

Э

Эдуард in SwiftBook
нее, выше весь код закоментирован
источник

C

Chezee in SwiftBook
Я ж не вижу, что там выше
источник

ЮК

Юрій Кустов... in SwiftBook
как я понял что то типа // ... some code ... or /* ... some code */
источник

Э

Эдуард in SwiftBook
Ну вот, все что выше - удалил
источник

C

Chezee in SwiftBook
Клоужура никак не связана с переменной а
источник

C

Chezee in SwiftBook
Поэтому выводит 0
источник

C

Chezee in SwiftBook
У тебя 2 переменных сейчас: closure и a. Они между собой никак не взаимодействуют
источник

Э

Эдуард in SwiftBook
Закоментарил переменную «а» - заругался, значит как-то они взаимодействуют
источник

ЮК

Юрій Кустов... in SwiftBook
кстати а почему 0 а не ошибку? оно типо думает что а в случае [a] єто индекс в масиве ?
источник

G

Give Five Give Seven in SwiftBook
Как это вообще скомпилилось? Playground оборачивает все в какой-то класс? Ведь переменная а позже объявлена.
источник

C

Chezee in SwiftBook
Это уже какой-то баг плейграунда. Переменная а существует только после объявления кложуры. Видать компилятор ее подхватывает до объявления каким-то образом в этом скоупе. Значения у неё нет на этапе задания замыкания, вот тебе и 0
источник

G

Give Five Give Seven in SwiftBook
Плюс в Swift нет значений по -умолчанию, как в других языках. В той же Java.
источник