Junior — Middle
Swift dilində siniflərdə obyektlərin vəziyyətini dəyişən metodlar elan etmək mümkündürmü?
sobes.tech Süni İntellekt
AI-dan cavab
Swift-də, obyektin vəziyyətini dəyişən metodlar mutating açar sözü ilə elan edilir, amma bu yalnız strukturlar və enumerasiyalar (dəyər növləri) üçün keçərlidir. Siniflər (istinad növləri) üçün, metodlar standart olaraq nümunənin xüsusiyyətlərini dəyişə bilər, əlavə açar sözə ehtiyac yoxdur.
Yəni:
- Siniflərdə,
mutatingolmadan obyektin vəziyyətini dəyişən metodlar elan edilə bilər. - Struktur və enumerasiyalarda, xüsusiyyətləri dəyişən metodlar
mutatingkimi işarələnməlidir.
Dəyişən metod nümunəsi:
class Counter {
var count = 0
func increment() {
count += 1
}
}
let counter = Counter()
counter.increment()
print(counter.count) // 1
mutating metod nümunəsi:
struct Counter {
var count = 0
mutating func increment() {
count += 1
}
}
var counter = Counter()
counter.increment()
print(counter.count) // 1