Junior — Middle
L'utilisation de l'opérateur d'accès aux éléments du tableau garantit-elle une protection contre les dépassements de limites?
sobes.tech IA
Réponse de l'IA
En Swift, l'opérateur d'accès aux éléments du tableau (par exemple, array[index]) ne garantit pas la protection contre le dépassement. Si l'indice dépasse les limites du tableau, l'application générera une erreur d'exécution et se terminera de manière anormale.
Pour un accès sécurisé, vous pouvez utiliser des méthodes qui renvoient une valeur optionnelle, par exemple, une extension avec vérification de l'indice :
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, en toute sécurité
Ainsi, l'opérateur standard ne protège pas, et le développeur doit contrôler manuellement les limites.