Junior
Strong yaddaş modifikatorları nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Swift-də strong modifikatoru, obyektə istinadın həmin obyektin istinad sayğacını bir artırdığını göstərir. Bu, obyektin yaddaşda saxlanılacağı deməkdir, ən azı bir güclü istinad ona mövcuddur.
Əsasən, bu, referens tipləri (siniflər) üçün istifadə olunur. strong modifikatoru ilə dəyişənə nil təyin edilməsi, istinad sayğacını azaldır. Sayğac sıfıra çatdıqda, obyekt yaddaşdan azad edilir.
Nümunə:
class Person {
var name: String
init(name: String) {
self.name = name
print("\(name) başlanır")
}
deinit {
print("\(name) sonlandırılır")
}
}
var reference1: Person?
var reference2: Person?
reference1 = Person(name: "Alice") // Alice üçün istinad sayğacı: 1
reference2 = reference1 // Alice üçün istinad sayğacı: 2
reference1 = nil // Alice üçün istinad sayğacı: 1
reference2 = nil // Alice üçün istinad sayğacı: 0, Alice sonlandırılır