Junior
Wat zijn de sterke geheugenmodifiers?
sobes.tech AI
Antwoord van AI
De strong modifier houdt een sterke verwijzing naar het object, waardoor het niet wordt gedealloceerd zolang er ten minste één sterke verwijzing bestaat. Standaard wordt het gebruikt voor variabelen die zonder speciale modifiers zijn gedeclareerd.
Voorbeeld:
class MyClass {
var name: String = ""
init(name: String) {
self.name = name
print("Object '\(name)' gemaakt")
}
deinit {
print("Object '\(name)' gedealloceerd")
}
}
// sterke verwijzing
var obj1: MyClass? = MyClass(name: "Eerste")
// Andere sterke verwijzing
var obj2: MyClass? = obj1
print("---")
// Het op null zetten van één verwijzing leidt niet tot de deallocatie
obj1 = nil
print("---")
// Het op null zetten van de laatste sterke verwijzing leidt tot de deallocatie
obj2 = nil
print("---")