Junior
O que são os modificadores de memória strong?
sobes.tech IA
Resposta da IA
O modificador strong mantém uma referência forte ao objeto, impedindo a sua desalocação enquanto existir pelo menos uma referência forte. É usado por padrão para variáveis declaradas sem modificadores especiais.
Exemplo:
class MyClass {
var name: String = ""
init(name: String) {
self.name = name
print("Objeto '\(name)' criado")
}
deinit {
print("Objeto '\(name)' desalocado")
}
}
// referência forte
var obj1: MyClass? = MyClass(name: "Primeiro")
// Outra referência forte
var obj2: MyClass? = obj1
print("---")
// Definir uma referência como nil não leva à desalocação
obj1 = nil
print("---")
// Definir a última referência forte como nil leva à desalocação
obj2 = nil
print("---")