Maison > développement back-end > C++ > Comment utiliser les modèles de fonctions en C++ ?

Comment utiliser les modèles de fonctions en C++ ?

王林
Libérer: 2024-04-12 15:24:02
original
1036 Les gens l'ont consulté

Les modèles de fonctions C++ vous permettent de créer des fonctions qui fonctionnent avec plusieurs types de données, améliorant ainsi la réutilisabilité du code. La syntaxe est la suivante : modèle nom de la fonction (liste de paramètres), qui peut être utilisée en spécifiant les paramètres de type. Des exemples pratiques incluent l'utilisation de modèles de fonctions dans des structures de données, telles que la classe stack qui peut être utilisée pour n'importe quel type de données : template

C++ 中如何使用函数模板?

Comment utiliser les modèles de fonctions en C++

Les modèles de fonctions sont une fonctionnalité puissante en C++ qui vous permet de créer des fonctions pouvant être utilisées sur plusieurs types de données. Cela améliore la réutilisabilité du code et réduit la quantité de code en double.

Syntaxe du modèle de fonction

La syntaxe d'un modèle de fonction est la suivante :

template <typename T>
函数名(参数列表) {
    函数体
}
Copier après la connexion

T est un paramètre de type. Il peut y avoir plusieurs paramètres de type, séparés par des virgules.

Utilisation de modèles de fonctions

Pour utiliser des modèles de fonctions, spécifiez simplement les paramètres de type après le nom de la fonction. Par exemple, le code suivant déclare une fonction modèle qui calcule la somme de deux nombres :

template <typename T>
T sum(T a, T b) {
    return a + b;
}
Copier après la connexion

Désormais, vous pouvez utiliser cette fonction avec n'importe quel type de données, tel que :

int x = sum(1, 2); // x 等于 3
double y = sum(1.5, 2.5); // y 等于 4.0
Copier après la connexion

Un exemple pratique

Ce qui suit est un structure des données Exemples pratiques d'utilisation de modèles de fonctions dans :

template <typename T>
class Stack {
private:
    vector<T> elements;

public:
    void push(T element) {
        elements.push_back(element);
    }

    T pop() {
        if (elements.empty()) {
            throw runtime_error("Stack is empty");
        }
        T element = elements.back();
        elements.pop_back();
        return element;
    }
};
Copier après la connexion

Cette classe de pile peut utiliser n'importe quel type de données, tel que :

Stack<int> intStack;
intStack.push(1);
intStack.push(2);
cout << intStack.pop() << endl; // 输出 2
cout << intStack.pop() << endl; // 输出 1
Copier après la connexion

Conclusion

Les modèles de fonctions sont un outil puissant en C++ pour améliorer la réutilisabilité du code et réduire le code en double. En comprenant la syntaxe des modèles de fonctions et en utilisant des exemples pratiques, vous pouvez profiter de cette fonctionnalité pour écrire un code plus flexible et plus maintenable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal