Что выведет код Junior Типы значений и ссылочные спрашивают часто обновлено

Что выведет Swift: общий экземпляр класса

Вопрос

Что выведет код?

final class Point { var x: Int; init(x: Int) { self.x = x } }

let a = Point(x: 1)
let b = a
b.x = 5
print(a.x, b.x)

Попробуйте сами

Напишите, что выведет код: каждый вывод с новой строки.

Показать ответ и разбор

Коротко

Код выведет: 5 5. Класс это ссылочный тип: a и b указывают на один объект. let фиксирует ссылку, но не запрещает менять var-свойства объекта.

Что выведет

5 5

Разбор

Класс это ссылочный тип: a и b указывают на один объект. let фиксирует ссылку, но не запрещает менять var-свойства объекта.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.