Junior — Middle
Massiv elementlərinə giriş operatorunun istifadəsi sərhədlərdən çıxmağa qarşı qoruma təmin edir?
sobes.tech Süni İntellekt
AI-dan cavab
Swift-də, massiv elementlərinə giriş operatoru (məsələn, array[index]) sərhəd aşımını təmin etmir. Əgər indeks massiv sərhədlərindən kənara çıxarsa, tətbiq iş vaxtında xəta verəcək və qəza ilə bağlanacaq.
Təhlükəsiz giriş üçün, indeks yoxlaması edən və opsional dəyər qaytaran metodlardan istifadə etmək olar, məsələn, indeks yoxlaması ilə genişlənmə:
extension Array {
func safeGet(index: Int) -> Element? {
return indices.contains(index) ? self[index] : nil
}
}
let arr = [1, 2, 3]
print(arr.safeGet(index: 5)) // nil, təhlükəsiz
Beləliklə, standart operator qoruma təmin etmir və inkişaf etdirici sərhədləri özünün yoxlamalıdır.