Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Typename Parameter as a Return Type | Templates Usage
C++ Templates
course content

Kursusindhold

C++ Templates

C++ Templates

1. Creating First Template
2. Templates Usage
3. Class Templates
4. Template Specialization

book
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.

cpp

main

copy
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.

Opgave

Swipe to start coding

Create a simple template that returns the passed value

  1. Write a simple template function called GetValue.
  2. Use the template's typename parameter as the return type.
  3. Add a parameter to the template function with the same type as the return type.
  4. Return the function's parameter.

Løsning

cpp

solution

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 1
toggle bottom row

book
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.

cpp

main

copy
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.

Opgave

Swipe to start coding

Create a simple template that returns the passed value

  1. Write a simple template function called GetValue.
  2. Use the template's typename parameter as the return type.
  3. Add a parameter to the template function with the same type as the return type.
  4. Return the function's parameter.

Løsning

cpp

solution

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 1
Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Vi beklager, at noget gik galt. Hvad skete der?
some-alt