Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Je Eerste Template Maken in C++ | Eerste Template Maken
C++-Templates
Sectie 1. Hoofdstuk 3
single

single

Je Eerste Template Maken in C++

Veeg om het menu te tonen

Laten we bekijken wat er gebeurt wanneer je verschillende typen voor de template opgeeft. Hiervoor gebruik je typeid().name(), waarmee eenvoudig het gegevenstype van de variabele wordt weergegeven. Bekijk het onderstaande voorbeeld:

main.cpp

main.cpp

1234567
#include <iostream> int main() { int x = 5; std::cout << typeid(x).name(); }
Note
Opmerking

De bovenstaande code toont in de console alleen i, wat aangeeft dat x een int is.

Een template maken met <typename Type> en Type als parameter aan de functie doorgeven in plaats van een specifiek variabel type op te geven.

main.cpp

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>(); }

Zoals te zien is, wanneer de templatefunctie wordt aangeroepen en een type binnen de haakjes wordt opgegeven, ontvangt de typename parameter dat type. De naam van de templateparameter wordt in feite een alias voor dat type.

Deze templateparameter kan ook binnen de functie worden gebruikt om variabelen van dat exacte type te declareren.

main.cpp

main.cpp

12345678
template<typename Type> void create_variable() { Type value; // Variable of the template type value = Type(); // Default initialization std::cout << value << std::endl; }
Taak

Veeg om te beginnen met coderen

  • Zet de swap-functie om in een templatefunctie:
    • definieer template met behulp van het sleutelwoord template;
    • voeg de lijst met templateparameters toe;
    • voeg één parameter toe voor de template.
  • Vervang alle types (int) door de typename uit de templateparameter.
  • Roep de templatefunctie aan en geef char als type door, waarbij twee variabelen in de main-functie worden verwisseld.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 3
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt