single
Création de Votre Premier Template en C++
Glissez pour afficher le menu
Voyons ce qui se passe lorsque vous spécifiez différents types pour le template. Pour cela, vous utiliserez typeid().name(), qui affiche simplement le type de données de la variable. Consultez l'exemple ci-dessous :
main.cpp
1234567#include <iostream> int main() { int x = 5; std::cout << typeid(x).name(); }
Le fragment de code ci-dessus affichera simplement dans la console i, ce qui signifie que x est un int.
Création d'un modèle en utilisant <typename Type> et passage de Type comme paramètre à la fonction au lieu de spécifier une variable précise.
main.cpp
12345678910111213#include <iostream> template<typename Type> void check_type() { std::cout << typeid(Type).name() << std::endl; } int main() { // Try to change `int` to different type check_type<int>(); }
Comme vous pouvez le constater, lorsque vous appelez la fonction modèle et spécifiez un type entre crochets, le paramètre typename reçoit ce type. Le nom du paramètre du modèle devient essentiellement un alias pour ce type.
Vous pouvez également utiliser ce paramètre de modèle à l'intérieur du corps de la fonction pour déclarer des variables de ce type exact.
main.cpp
12345678template<typename Type> void create_variable() { Type value; // Variable of the template type value = Type(); // Default initialization std::cout << value << std::endl; }
Glissez pour commencer à coder
- Transformer la fonction
swapen une fonction template :- définir le template en utilisant le mot-clé
template; - ajouter la liste des paramètres de template ;
- ajouter un paramètre pour le template.
- définir le template en utilisant le mot-clé
- Remplacer tous les types (
int) par letypenameissu du paramètre de template. - Appeler la fonction template et passer
charcomme type, en échangeant deux variables dans la fonctionmain.
Solution
Merci pour vos commentaires !
single
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion