Utilisez l'astuce des paramètres de type pour créer des modèles de fonctions C++ génériques qui fonctionnent pour n'importe quel type, notamment : Déclaration des paramètres de type : utilisez les crochets angulaires <> et typename pour déclarer les paramètres de type. Utiliser des paramètres de type : utilisez des paramètres de type comme déclarations de type dans le corps de la fonction. Cas pratique : Créez une fonction push de classe Stack générale à l'aide de paramètres de type. Autres conseils : spécification de paramètres de type par défaut, plusieurs paramètres de type et imposition de contraintes.
Conseils pour l'utilisation des paramètres de type dans les modèles de fonctions C++
Les modèles de fonctions vous permettent de créer des fonctions pouvant cibler différents types de données. À l’aide des paramètres de type, vous pouvez généraliser davantage le modèle afin qu’il puisse être utilisé avec n’importe quel type.
Déclaration des paramètres de type
Pour déclarer un paramètre de type, utilisez des crochets angulaires <> après le nom du modèle. Par exemple :
template <typename T> void print(const T& value) { std::cout << value << std::endl; }
Ici, T
est un paramètre de type, qui peut être utilisé comme n'importe quel type dans la fonction. T
是一个类型参数,它可以用作函数中的任何类型。
使用类型参数
一旦声明了类型参数,您就可以在函数体内使用它。您可以将其用作参数类型、返回值类型或其他类型的声明中。例如:
template <typename T> T add(const T& a, const T& b) { return a + b; }
此函数可用于针对任何支持加法运算的类型进行加法运算。
实战案例
假设您有一个 Stack
类,它可以将任何类型的元素存储在堆栈中。您可以使用类型参数创建通用 push
函数:
template <typename T> void Stack<T>::push(const T& element) { data_.push_back(element); }
此 push
函数可以针对任何可以存储在堆栈中的 T
类型正常工作。
其他技巧
typename
关键字指定默认类型参数,如果用户未提供参数,则使用此参数。,
分隔。class
、typename
和 typename…
Stack
qui peut stocker tout type d'éléments dans une pile. Vous pouvez créer une fonction générique push
en utilisant les paramètres de type : 🎜rrreee🎜Cette fonction push
fonctionnera correctement avec tout type T
pouvant être stocké sur la pile . 🎜🎜🎜Autres conseils🎜🎜typename
pour spécifier un paramètre de type par défaut, qui est utilisé si aucun paramètre n'est fourni par l'utilisateur. . 🎜,
. 🎜class
, typename
et typename…
. 🎜🎜🎜En utilisant correctement les paramètres de type, vous pouvez créer des modèles de fonctions C++ efficaces et polyvalents. 🎜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!