Что выведет код с массивом классов? Copy-on-Write
Задача
class Human {
var name: String
init(name: String) { self.name = name }
}
let man = Human(name: "Artem")
let woman = Human(name: "Dasha")
let family = [man, woman]
let anotherFamily = family
anotherFamily.last?.name = "Vika"
print(family.last?.name)
Что напечатается? Как сделать, чтобы вывелось Dasha? Что такое copy-on-write и у каких типов он есть? Работает ли CoW со всеми структурами?
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep