Junior
Co jsou to modifikátory paměti strong?
sobes.tech AI
Odpověď od AI
Modifikátor strong udržuje silné odkaz na objekt, čímž zabraňuje jeho uvolnění, dokud existuje alespoň jedno silné odkazování. Výchozí nastavení pro proměnné deklarované bez speciálních modifikátorů.
Příklad:
class MyClass {
var name: String = ""
init(name: String) {
self.name = name
print("Objekt '\(name)' vytvořen")
}
deinit {
print("Objekt '\(name)' uvolněn")
}
}
// silné odkazování
var obj1: MyClass? = MyClass(name: "První")
// Další silné odkazování
var obj2: MyClass? = obj1
print("---")
// Nastavení jedné reference na nil nevede k uvolnění
obj1 = nil
print("---")
// Nastavení poslední silné reference na nil vede k uvolnění
obj2 = nil
print("---")