La surcharge de fonction Surcharge de fonction
Il nous reste encore une notion importante à voir sur le thème des fonctions : la surcharge de fonction.
Lorsque l’on écrit une fonction dans un programme, elle doit être unique !
Comment fait-on ?
Pour être unique, une fonction doit présenter une signature unique. Les éléments qui entrent en compte dans la signature d’une fonction sont son nom, le nombre de paramètres et les types des paramètres.
Il est donc possible de définir plusieurs fonctions portant le même nom tant que le nombre de paramètres est différent ou que les types des paramètres sont différents :
fun count()
{
//...
}
fun count(min: Int, max: Int)
{
//...
}
fun count (min: Double, max: Double)
{
//...
}
fun count (min: Int, max: Double)
{
//...
}
Il est possible d’appeler toutes ces fonctions ! En fonction des arguments que nous allons passer, la bonne fonction sera automatiquement sélectionnée :
count()
count(5, 10)
count(5.0, 10.0)
count(5, 10.0)