Junior
Čo sú to modifikátory pamäte strong?
sobes.tech AI
Odpoveď od AI
Modifikátor strong udrži silné odkaz na objekt, čímž zabrání jeho uvoľneniu, dokler existuje alespoň jedno silné odkazovanie. Predvolene sa používa pre premenné deklarované bez špeciálnych modifikátorov.
Príklad:
class MyClass {
var name: String = ""
init(name: String) {
self.name = name
print("Objekt '\(name)' vytvorený")
}
deinit {
print("Objekt '\(name)' uvoľnený")
}
}
// silné odkazovanie
var obj1: MyClass? = MyClass(name: "Prvý")
// Iné silné odkazovanie
var obj2: MyClass? = obj1
print("---")
// Nastavenie jednej referencie na nil nevedie k uvoľneniu
obj1 = nil
print("---")
// Nastavenie poslednej silnej referencie na nil vedie k uvoľneniu
obj2 = nil
print("---")