Afin d'utiliser la fonction max () de la bibliothèque d'algorithmes C ++, le programme doit commencer par quelque chose avec la bibliothèque d'algorithme incluse comme:
#inclureIl existe quatre principales formes surchargées de cette fonction maximale et cet article explique comment les utiliser.
modèleCette fonction prend deux arguments du même type et renvoie le plus grand des deux. Si les deux sont les mêmes en valeur, la première occurrence est retournée. Le programme suivant illustre son utilisation:
#inclureLa sortie est e.
modèleCette fonction surchargée est similaire à ce qui précède, mais le programmeur a défini sa propre fonction de comparaison. La fonction surchargée ci-dessus utilise la fonction de comparaison par défaut. La définition d'une fonction de comparaison, qui fait la même chose que la fonction de comparaison par défaut est:
bool compfn (char a, char b)Il prend deux valeurs, qui peuvent être d'une liste, alors son retour vrai, si le premier est inférieur au second, alors il est faux. Dans cette fonction, «A» est la première valeur et b est la deuxième valeur. Dans la syntaxe de fonction max () de l'en-tête de cette section, le premier argument est «A» et le deuxième argument est B, tandis que le troisième argument est le nom de la fonction de comparaison sans les parenthèses et les arguments.
Notez que le type des arguments de la fonction de comparaison est le même que le type des arguments dans la fonction max ().
Le programme suivant avec une fonction définie par le programmeur a le même effet, que le programme ci-dessus:
#inclureLa sortie est, E. Si «c» était tapé avant «e» comme arguments dans la fonction max (), la sortie aurait toujours été «e».
modèleEn C ++, un initialiseur_list est le littéral du tableau. Ce formulaire surchargé renvoie la plus grande valeur dans un initialiseur_list. Le programme suivant illustre ceci:
#inclureLa sortie est, E.
modèleCette fonction surchargée est similaire au code ci-dessus mais il a besoin d'une fonction de comparaison. La fonction de comparaison ci-dessus peut être utilisée comme illustré dans le programme suivant:
#inclureLa sortie est, E.
Fonction maximale personnalisée
Le programmeur peut écrire sa propre fonction max (). La stratégie consiste à faire la comparaison dans la fonction.
Max de deux valeurs
Le programme suivant montre comment déterminer la valeur maximale de deux valeurs:
#inclureMaximum dans une liste
Un programme personnalisé peut également être écrit pour trouver la valeur maximale dans une liste. La stratégie est la suivante:
Le premier élément est supposé être l'élément maximum de la liste. Si le premier élément est inférieur à l'élément suivant, alors l'élément suivant devient le nouveau maximum, sinon le premier élément reste le maximum. Si le maximum supposé est inférieur à l'élément après, l'élément après, devient le nouveau maximum, sinon, l'ancien maximum reste. Cette comparaison se poursuit jusqu'à la fin de la liste. Le programme suivant illustre ceci:
#inclureLa sortie est, E. La première instruction de la fonction MAX personnalisée obtient le maximum supposé, sous la forme:
char maxval = arr [0];Le segment de code suivant est une boucle pour. À l'intérieur de la boucle, se trouve un si-construction, qui fait la comparaison et l'attribution, alors que le balayage à travers le tableau se poursuit.
Dans la fonction principale C ++, la première instruction déclare le tableau, dont l'élément maximum est requis. La deuxième instruction appelle la fonction max personnalisée. La déclaration après, imprime la valeur maximale de la liste.
Conclusion
Sans écrire une fonction maximale personnalisée. Afin d'obtenir la valeur maximale de deux valeurs, ou à partir de plus de deux valeurs dans une liste, utilisez une fonction appropriée ci-dessous:
modèleCes fonctions surchargées sont toutes dans la bibliothèque d'algorithmes.