InnexoutofRangexception dans le C #
IndexoutOfRangeException se produit lorsque vous essayez d'accéder au tableau ou de définir l'élément de la plage d'index efficace dans la collection. Cela signifie que l'indice que vous utilisez est inférieur à la limite supérieure de la limite inférieure ou supérieure à la collecte (ou égale). Le moment de l'occurrence anormale
Considérons un tableau appelé
, taille 4:
L'indice d'accès 0 à 3 est valide, mais essayer d'accéder à déclenchera les anomalies d'indexoutofrangexception. array
<code class="language-csharp">byte[] array = new byte[4];</code>
array[4]
<.> 1. La longueur du tableau
Le tableau est basé sur 0, donc l'index du premier élément est 0, et l'index du dernier élément est de longueur -1.
Évitez d'utiliser des éléments d'accès à index égaux à la longueur, tels que .
array[array.Length] = 0;
L'indice du tableau n'inclut pas les limites supérieures. Access.
<.> 3. Le tableau ne se développera pas automatiquementpixels[imageWidth, imageHeight]
<.> 4. Boundaire du tableau personnalisé
Array.Resize<T>()
Vérifier les paramètres entrant ou transmis à la fonction pour éviter l'accès aux index au-delà de la plage.
La fonction de recherche peut renvoyer -1 aux éléments inhabituels. Traitement de ces situations pour éviter les anomalies dans l'accès ultérieur à la matrice.
Lorsque vous accédez aux données de la base de données avec IDAreader, assurez-vous de fournir des index de colonne efficaces.
comment éviter
Utiliser ou la vérification de l'état d'objet pour assurer la condition préalable correcte.
Vérifiez le suivi de la pile pour déterminer la ligne d'anomalies. Vérifiez le tableau et les index pertinents pour vous assurer qu'ils sont dans la plage effective.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!