Dans ce didacticiel, nous allons découvrir les modèles de fonctions en C ++ à l'aide d'exemples.
Les modèles sont des fonctionnalités puissantes de C ++ qui nous permettent d'écrire des programmes génériques.
Nous pouvons créer une seule fonction pour travailler avec différents types de données en utilisant un modèle.
Déclaration de modèle de fonction
Un modèle de fonction commence par le mot-clé template
suivi du (des) paramètre (s) du modèle à l'intérieur duquel est suivi de la déclaration de fonction.
template T functionName(T parameter1, T parameter2,… ) ( // code )
Dans le code ci - dessus, T
est un argument de modèle qui accepte différents types de données ( int
, float
, etc.), et typename
est un mot - clé.
Lorsqu'un argument d'un type de données est passé à functionName()
, le compilateur génère une nouvelle version de functionName()
pour le type de données donné.
Appel d'un modèle de fonction
Une fois que nous avons déclaré et défini un modèle de fonction, nous pouvons l'appeler dans d'autres fonctions ou modèles (comme la main()
fonction) avec la syntaxe suivante
functionName(parameter1, parameter2,… );
Par exemple, considérons un modèle qui ajoute deux nombres:
template T add(T num1, T num2) ( return (num1 + num2); )
On peut alors l'appeler dans la main()
fonction pour ajouter int
et des double
nombres.
int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << result2 << endl; return 0; )

Exemple: recherche de la valeur absolue des nombres
#include using namespace std; template T add(T num1, T num2) ( return (num1 + num2); ) int main() ( int result1; double result2; // calling with int parameters result1 = add(2, 3); cout << "2 + 3 = " << result1 << endl; // calling with double parameters result2 = add(2.2, 3.3); cout << "2.2 + 3.3 = " << result2 << endl; return 0; )
Production
2 + 3 = 5 2,2 + 3,3 = 5,5