Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

Come utilizzare i modelli di funzione in C + +

Si supponga di voler fare una funzione, Mult , che moltiplica due numeri . È possibile scrivere una versione separata per ogni tipo di dati , che è il metodo sovraccarico , oppure è possibile utilizzare + modelli di funzione C + + e avere una firma di funzione invece di tre . C + + modelli di funzione di automatizzare tipo di consegna , danno all'utente biblioteca potere più espressivo e ridurre i costi di manutenzione del codice . Cose che ti serviranno
Avanzata C + + Commercio compilatore C + + con IDE, come
di Bloodshed Mostra più istruzioni
1

overload di una funzione che moltiplica i numeri di tipo int , float e double :
int Mult ( int a , int b ) {
ritorno (a * b); }

galleggiante Mult ( float a , float b ) {
ritorno ( un * b); }

doppio Mult ( double a , double b ) {
ritorno (a * b); }

2

fare la stessa cosa che fase 1 non , utilizzando + modelli di funzione C + + :
template
Mult T ( T a, T b ) {
ritorno (a * b); }

3

Confronta punto 2 al punto 1 . La riga in più di codice inserito sopra la definizione della funzione al punto 2 sembra un buon compromesso per la ripetizione del corpo della funzione due o più volte .
4

Torna al codice della Fase 2 . T è il typename . La parola chiave class significa che T può assumere qualsiasi identità . Si tratta di un tipo generico che il compilatore interpreta al volo a seconda quale parametro l' utente passa ad esso . Quindi T può essere un numero intero , un float , una doppia o una classe che ha l'operatore di moltiplicazione definito , altrimenti l' operazione di moltiplicazione resta indefinito
5

testare a fondo la firma della funzione che utilizza i modelli . . Eseguire test con tutti i tipi di dati attesi per garantire che non si ottengono risultati imprevisti .

 

Programmazione © www.354353.com