|
|
Una Template funziona
|
Le templates di funzione di C++ sono le funzioni che possono maneggiare i tipi di dati differenti senza c'è ne codice separato per tutti i datatypes. Per il funzionamento simile sui parecchi generi dei tipi di dati, il programmatore può non avere bisogno di di scrivere le versioni differenti sovraccaricando di funzione. La funzione basata Template di C++ è abbastanza, esso prenderà la cura di tutti i tipi di dati.
|
Lasciarli cosider un piccolo esempio per la funzione di aggiunta. Se il requisito è di usare la funzione di aggiunta ad entrambi i tipi che è un numero intero e tipo del galleggiante, quindi i due funzionano necessità di essere generato per ogni tipo di dati.
|
int Add(int a,int b)
{
return a+b;
}
// function Without C++ template
float Add(float a, float b)
{
return a+b;
}
// function Without C++ template
|
|
Se i tipi di dati sono più di due allora esso sono difficili da essere maneggiato, Poiché quei molti numero di funzioni devono essere aggiunti. Se usiamo la Template di funzione di c++, il processo intero sarà ridotto alla singola Template di funzione di c++. Qui è il frammento di codice per la funzione di aggiunta.
|
template <class T>
T Add(T a, T b)
//C++ function template sample
{
return a+b;
}
|
|
Le templates del Class
|
Le templates del Class di corrente alternata ++ sono usate dove abbiamo le copie multiple del codice per i tipi di dati differenti che hanno la stessa logica. Se l'insieme delle funzioni o i Classes ha una stessa funzionalità per i tipi di dati differenti, staranno bene ai buoni candidati che sono scritti come le templates.
|
Il mosto di dichiarazione della Template del Class di corrente alternata ++ comincia con la parola chiave “Template„. Il parametro deve essere incluso all'interno delle staffe angolari. Il parametro all'interno dell'staffe angolari, può essere il Class di parola chiave o il typename. Ciò allora è seguita da una dichiarazione del corpo del Class con i dati del membro e le funzioni del membro. Il codice seguente è la dichiarazione per il Class della coda del campione.
|
//Sample code snippet for C++ Class Template
template <typename T>
class MyQueue
{
std::vector data;
public:
void Add(T const &d);
void Remove();
void Print();
};
|
|
|
|
Keywords CPP Templates, c++ templates, windows templates, c# templates, cpp reference,
python templates, gcc templates, cpp classes, java templates, cpp tutorial,
stl templates, function templates, vector templates, free templates, cpp programming,
functions cpp, library templates, cpp c++, cpp vector, cpp stl, cpp compiler,
string cpp, cpp exe, cpp define, header templates, window templates, reference templates,
programming templates, link templates, windows cpp
|