Exporter (0) Imprimer
Développer tout
Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source

?? Opérateur (référence C#)

L'opérateur ?? est appelé l'opérateur de fusion Null et est utilisé pour définir une valeur par défaut pour les types valeur Nullable ainsi que pour les types référence. Il retourne l'opérande de gauche si celui-ci n'est pas Null ; sinon, il retourne l'opérande de droite.

Un type Nullable peut contenir une valeur ou être indéfini. L'opérateur ?? définit la valeur par défaut à retourner lorsqu'un type Nullable est affecté à un type non Nullable. Si vous essayez d'assigner un type valeur Nullable à un type valeur non Nullable sans utiliser l'opérateur ??, vous générez une erreur de compilation. Si vous utilisez un cast et si le type valeur Nullable est actuellement indéfini, une exception InvalidOperationException est levée.

Pour plus d'informations, consultez Types Nullable (Guide de programmation C#).

Le résultat d'un opérateur ?? n'est pas interprété comme une constante même si ses deux arguments sont des constantes.


class NullCoalesce
{
    static int? GetNullableInt()
    {
        return null;
    }

    static string GetStringValue()
    {
        return null;
    }

    static void Main()
    {
        // ?? operator example.
        int? x = null;

        // y = x, unless x is null, in which case y = -1.
        int y = x ?? -1;

        // Assign i to return value of method, unless
        // return value is null, in which case assign
        // default value of int to i.
        int i = GetNullableInt() ?? default(int);

        string s = GetStringValue();
        // ?? also works with reference types. 
        // Display contents of s, unless s is null, 
        // in which case display "Unspecified".
        Console.WriteLine(s ?? "Unspecified");
    }
}


Ajouts de la communauté

AJOUTER
Microsoft réalise une enquête en ligne pour recueillir votre opinion sur le site Web de MSDN. Si vous choisissez d’y participer, cette enquête en ligne vous sera présentée lorsque vous quitterez le site Web de MSDN.

Si vous souhaitez y participer,
Afficher:
© 2015 Microsoft