Typename Parameter as a Return Type
Templates are not just for defining the types of parameters. A powerful feature of templates is that the return type of a function can also depend on the template parameter. This gives you the flexibility to create generic functions with return types that adjust based on the template type provided.
main.cpp
1234567891011121314#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; }
In the example above, the function's return type is defined by the template parameter T
. When we specify void as the type, the compiler interprets it accordingly.
Swipe to start coding
Create a simple template that returns the passed value
- Write a simple template function called
GetValue
. - Use the template's typename parameter as the return type.
- Add a parameter to the template function with the same type as the return type.
- Return the function's parameter.
Oplossing
solution.cpp
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Vat dit hoofdstuk samen
Explain code
Explain why doesn't solve task
Awesome!
Completion rate improved to 5.88
Typename Parameter as a Return Type
Veeg om het menu te tonen
Templates are not just for defining the types of parameters. A powerful feature of templates is that the return type of a function can also depend on the template parameter. This gives you the flexibility to create generic functions with return types that adjust based on the template type provided.
main.cpp
1234567891011121314#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; }
In the example above, the function's return type is defined by the template parameter T
. When we specify void as the type, the compiler interprets it accordingly.
Swipe to start coding
Create a simple template that returns the passed value
- Write a simple template function called
GetValue
. - Use the template's typename parameter as the return type.
- Add a parameter to the template function with the same type as the return type.
- Return the function's parameter.
Oplossing
solution.cpp
Bedankt voor je feedback!
Awesome!
Completion rate improved to 5.88single