single
Creazione del Primo Template in C++
Scorri per mostrare il menu
Vediamo cosa succede quando si specificano tipi diversi per il template. Per questo utilizzerai typeid().name(), che mostra semplicemente il tipo di dato della variabile. Osserva l'esempio qui sotto:
main.cpp
1234567#include <iostream> int main() { int x = 5; std::cout << typeid(x).name(); }
Il frammento di codice sopra mostrerà semplicemente in console i, a indicare che x è un int.
Creazione di un template utilizzando <typename Type> e passaggio di Type come parametro alla funzione invece di specificare una variabile di tipo specifico.
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>(); }
Come puoi vedere, quando chiami la funzione template e specifichi un tipo tra parentesi angolari, il parametro typename riceve quel tipo. Il nome del parametro template diventa essenzialmente un alias per quel tipo.
È inoltre possibile utilizzare quel parametro template all'interno del corpo della funzione per dichiarare variabili di quel tipo esatto.
main.cpp
12345678template<typename Type> void create_variable() { Type value; // Variable of the template type value = Type(); // Default initialization std::cout << value << std::endl; }
Scorri per iniziare a programmare
- Trasformazione della funzione
swapin una funzione template:- definizione del template utilizzando la parola chiave
template; - aggiunta dell'elenco dei parametri template;
- aggiunta di un parametro per il template.
- definizione del template utilizzando la parola chiave
- Sostituzione di tutti i tipi (
int) con iltypenamedal parametro template. - Chiamata della funzione template passando
charcome tipo, scambiando due variabili nella funzionemain.
Soluzione
Grazie per i tuoi commenti!
single
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione