Cette documentation est archivée et n’est pas conservée.

[], opérateur (Référence C#)

Les crochets ([]) sont utilisés pour les tableaux, les indexeurs et les attributs. Ils peuvent aussi être utilisés avec des pointeurs.

Un type de tableau est un type suivi de [] :

int[] fib; // fib is of type int[], "array of int"
fib = new int[100]; // create a 100-element int array

Pour accéder à un élément d'un tableau, l'index de l'élément souhaité est placé entre crochets :

fib[0] = fib[1] = 1;
for( int i=2; i<100; ++i ) fib[i] = fib[i-1] + fib[i-2];

Une exception est levée si un index de tableau est hors limites.

L'opérateur d'indexation de tableau ne peut pas être surchargé. Toutefois, les types peuvent définir des indexeurs et des propriétés qui acceptent un ou plusieurs paramètres. Les paramètres d'indexeur sont placés entre crochets, comme des indices de tableau, mais ils peuvent être déclarés d'un type quelconque, contrairement aux indices de tableau, qui doivent être intégraux.

Par exemple, le .NET Framework définit un type Hashtable qui associe des clés et des valeurs d'un type arbitraire :

Collections.Hashtable h =  new Collections.Hashtable();
h["a"] = 123; // note: using a string as the index

Des crochets sont également utilisés pour spécifier des Attributs (Guide de programmation C#) :

[attribute(AllowMultiple=true)]
public class Attr 
{
}

Vous pouvez utiliser des crochets pour ignorer un pointeur dans un index :

unsafe fixed ( int* p = fib )   // p points to fib from earlier example
{
    p[0] = p[1] = 1;
    for( int i=2; i<100; ++i ) p[i] = p[i-1] + p[i-2];
}

Aucune vérification des limites n'est effectuée.

Pour plus d'informations, consultez les sections suivantes dans Spécifications du langage C#.

  • 1.6.6.5 Opérateurs

  • 7.2 Opérateurs

Afficher: