C# Language Paramètres facultatifs et arguments nommés


Exemple

Nous pouvons omettre l'argument dans l'appel si cet argument est un argument facultatif Chaque argument optionnel a sa propre valeur par défaut Il prendra une valeur par défaut si nous ne fournissons pas la valeur Une valeur par défaut d'un argument facultatif doit être

  1. Expression constante
  2. Doit être un type de valeur tel que enum ou struct.
  3. Doit être une expression du formulaire par défaut (valueType)

Il doit être défini à la fin de la liste des paramètres

Paramètres de méthode avec les valeurs par défaut:

public void ExampleMethod(int required, string optValue = "test", int optNum = 42)
{
    //...
}

Comme indiqué par MSDN, un argument nommé,

Vous permet de passer l'argument à la fonction en associant le nom du paramètre Pas besoin de mémoriser la position des paramètres dont nous n'avons pas toujours conscience. Pas besoin de regarder l'ordre des paramètres dans la liste de paramètres de la fonction appelée. Nous pouvons spécifier le paramètre pour chaque argument par son nom.

Arguments nommés:

// required = 3, optValue = "test", optNum = 4
ExampleMethod(3, optNum: 4);
// required = 2, optValue = "foo", optNum = 42
ExampleMethod(2, optValue: "foo");
// required = 6, optValue = "bar", optNum = 1
ExampleMethod(optNum: 1, optValue: "bar", required: 6);

Limitation de l'utilisation d'un argument nommé

La spécification d'argument nommé doit apparaître après que tous les arguments fixes ont été spécifiés.

Si vous utilisez un argument nommé avant un argument fixe, vous obtiendrez une erreur de compilation comme suit.

entrer la description de l'image ici

La spécification d'argument nommé doit apparaître après que tous les arguments fixes ont été spécifiés