Общие вопросы
Смешанные вопросы по Swift.
Открыть разделБаза Hintsage
Язык Swift и разработка приложений в экосистеме Apple.
Темы раздела
Смешанные вопросы по Swift.
Открыть разделТипы, функции, структуры, классы и базовая семантика.
Открыть разделOptionals, value/reference semantics, casting и pattern matching.
Открыть разделProtocols, extensions, associated types и generic constraints.
Открыть разделCollections, closures, map/filter/reduce и sequences.
Открыть разделARC, reference cycles, weak/unowned и время жизни объектов.
Открыть разделasync/await, actors, tasks и безопасность данных.
Открыть разделthrows, Result, defer и моделирование ошибок.
Открыть разделПрактика
В чём механизм восходящего приведения экземпляра подкласса к базовому классу через as и почему оно не может завершиться ошибкой во время выполнения?
Как switch по Optional можно сделать исчерпывающим без default, указав только случаи наличия и отсутствия значения?
Опишите, как pattern matching в конструкции for обрабатывает коллекцию Optional-значений и что попадает в тело цикла.
Какую проблему решает @unknown default в switch по перечислению из библиотеки?
Практическая ситуация: нужно привести гетерогенный массив к массиву целых чисел. Какой результат напечатает код и почему?
let values: [Any] = [1, "2", 3]
let numbers = values as? [Int]
print(numbers == nil)
Как Swift формирует Optional вокруг результата try?, если throwing-выражение уже возвращает Optional?
Что проверяет where после успешного сопоставления шаблона в Swift?
При захвате изменяемой локальной переменной в escaping-замыкании что определяет видит ли замыкание её последующие изменения?
Практическая ситуация: функция получает экземпляр класса и переназначает свой параметр на новый объект. Изменится ли переменная вызывающего кода?
По значению типа Any.Type определите, описывает ли оно класс, а не структуру.
Если одно замыкание присвоить двум переменным, создаёт ли это независимые копии захваченного изменяемого состояния?
После уничтожения объекта обращение к unowned-ссылке завершается чем и почему?
Предскажите результат и объясните, как is учитывает Optional в этом коде:
let value: Int? = 42
print(value is Int)
print(value is Int?)
В тернарном выражении одна ветка возвращает String, а другая — nil: какой тип получает результат и почему?
Как правило эксклюзивного доступа Swift влияет на одновременное чтение и изменение одной переменной?
Объясните механизм: почему Swift разрешает передать массив Int как массив Any, но обратное приведение не считается безопасным?
Представьте вызов перегруженной функции с аргументом типа Any: определяется ли перегрузка по фактическому типу объекта?
При сопоставлении кортежа в Swift что определяет успешность pattern matching?
Почему при приведении значения Any, содержащего типизированный nil, к Optional<Int> результат может иметь внешний some и внутренний nil?
Как наличие associated type влияет на использование протокола как типа значения в Swift?
Показано 81–100 из 651