Logo Makeyourgame
Accueil Les formations Créer un jeu Les ateliers Les tutoriels Blog Loterie
Logo Makeyourgame
Les formations Les financements Les exercices La certification Unity
Logo Makeyourgame
Mes objectifs Les jeux Les ressources Le glossaire
Logo Makeyourgame
Les tutos Les tutos Youtube

C# - Paramètres par défaut d'une méthode : Langage C#

pictureProfil_alto
Ecrit par alto
Catégorie Langage C#
Mis à jour le 26/04/2020
C# - Paramètres par défaut d'une méthode

Depuis la version 4 du langage C#, il est possible de préciser des paramètres par défaut d'une méthode. Cela ouvre des possibilités de développement intéressantes pour toutes les méthodes de nos classes C#.

4 min Débutant

Nous voyons ici comment utiliser tout cela...

Niveau: IntermédiairePoste: Développeur.se Moteur de jeu: Tous ceux utilisant le langage C# API: Default parameters, Named parameters

 

Paramètre par défaut

Dans certains langages, comme Java, cette notion n'existe pas, mais avec le langage C#, on peut profiter de cette fonctionnalité très utile.

Habituellement vous devez surement préciser tous les paramètres lors de l'appel d'une méthode, non ?

//méthode à appeler
void callMe(int value, string code){
    //votre code
}
//utilisation de la méthode
callMe(50,"HEALTH");

 

En effet dans l'exemple ci-dessus, si on oublie de préciser un des 2 paramètres lors de l'appel de la méthode, une erreur sera affichée !!

Mais ici on pourrait très bien se dire que par défaut la valeur du code serait pourquoi pas : "BULLET" . Et ainsi on pourrait espérer appeler notre méthode de cette manière ...

//utilisation de la méthode
callMe(50);

 

Et bien grâce au c# dans sa version 4, c'est tout à fait possible, du moment que nous avons bien ajusté la signature de la méthode.

//méthode à appeler
void callMe(int value, string code = "BULLET"){
    //votre code
}
//utilisation de la méthode
callMe(50);

Comme on peut le voir, cette fois-ci nous avons bien une valeur par défaut pour le paramètre code. La valeur est "BULLET", comme convenu.

Ainsi on peut maintenant appeler cette méthode en lui indiquant, ou pas, la valeur du paramètre code.

Cela nous permet donc, entre autres, d'alléger l'utilisation de cette méthode.

 

Paramètres nommés : named parameters

A partir du moment où une méthode dispose de plus d'un paramètre, la notion d'ordre des paramètres envoyés à la méthode est cruciale !! Mais avec les named parameters (paramètres nommés), on peut les mettre dans l'ordre que l'on veut du moment que l'on nomme de quel paramètre il s'agit.

Par exemple on peut appeler notre méthode précédente en faisant :

//utilisation de la méthode
callMe(code:"TEST", value:50);

Comme vous pouvez le voir, ici on met en premier le paramètre code, puis en second value ....alors que dans la signature de la méthode l'ordre est inversé !!

Ainsi on nomme le paramètre : code, on ajoute un ":", puis on précise la valeur du paramètre à transmettre à la méthode.

Ex: code: "TEST"

Excellent, non ?

 

Ouaip !! Mais à quoi ça sert ?

 

Là où cela devient vraiment utile c'est quand la méthode dispose de plus de 2 paramètres, et aussi plus de 2 paramètres avec des valeurs par défaut...La suite en vidéo !!

 

 

Explications en vidéo

Retrouvez une explication sur la vidéo suivante, issue de notre chaîne Youtube.

 

 

Vues: 4264

Licence:



Validation du Tutoriel

Veuillez vous connecter ou créer un compte pour pouvoir valider ce tutoriel et ainsi gagner de l'expérience (XP) !

Vous aimerez aussi...

Blog et Tutoriels

Utiliser la classe WWW  de Unity

Utiliser la classe WWW de Unity

par alto

Avec la classe WWW de Unity , vous allez pouvoir contacter un script php (par exemple) placé sur un serveur web. Apprenez à récupérer des informations issues d'une base de données depuis votre application Unity.

applause logo0
C# conception objet : le couplage

C# conception objet : le couplage

par Twinkel

Un des principes de qualité de code est le Couplage. Ici nous allons essayé de comprendre ce que c'est, pourquoi il faut l'éviter et un aperçu de bonne pratique de conception de code.

applause logo0