Contenu du cours
Modèles C++
Modèles C++
Paramètre Typename Comme Type de Retour
Les templates ne servent pas seulement à définir les types de paramètres. Une fonctionnalité puissante des templates est que le type de retour d'une fonction peut également dépendre du paramètre de template. Cela vous donne la flexibilité de créer des fonctions génériques avec des types de retour qui s'ajustent en fonction du type de template fourni.
main
#include <iostream> template<typename T> T MyFirstTemplateReturn() { // Returning a default-initialized value of type T return T{}; } int main() { // Call the template with the void type std::cout << typeid(MyFirstTemplateReturn<void>()).name() << std::endl; }
Dans l'exemple ci-dessus, le type de retour de la fonction est défini par le paramètre de template T
. Lorsque nous spécifions void comme type, le compilateur l'interprète en conséquence.
Swipe to start coding
Créez un modèle simple qui retourne la valeur passée
- Écrivez une fonction modèle simple appelée
GetValue
. - Utilisez le paramètre typename du modèle comme type de retour.
- Ajoutez un paramètre à la fonction modèle avec le même type que le type de retour.
- Retournez le paramètre de la fonction.
Solution
solution
Merci pour vos commentaires !
Paramètre Typename Comme Type de Retour
Les templates ne servent pas seulement à définir les types de paramètres. Une fonctionnalité puissante des templates est que le type de retour d'une fonction peut également dépendre du paramètre de template. Cela vous donne la flexibilité de créer des fonctions génériques avec des types de retour qui s'ajustent en fonction du type de template fourni.
main
#include <iostream> template<typename T> T MyFirstTemplateReturn() { // Returning a default-initialized value of type T return T{}; } int main() { // Call the template with the void type std::cout << typeid(MyFirstTemplateReturn<void>()).name() << std::endl; }
Dans l'exemple ci-dessus, le type de retour de la fonction est défini par le paramètre de template T
. Lorsque nous spécifions void comme type, le compilateur l'interprète en conséquence.
Swipe to start coding
Créez un modèle simple qui retourne la valeur passée
- Écrivez une fonction modèle simple appelée
GetValue
. - Utilisez le paramètre typename du modèle comme type de retour.
- Ajoutez un paramètre à la fonction modèle avec le même type que le type de retour.
- Retournez le paramètre de la fonction.
Solution
solution
Merci pour vos commentaires !