Anteprima
Vedrai una selezione di 1 pagina su 2
Programma C++: Template Pag. 1
1 su 2
Disdici quando vuoi 162x117
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Sintesi
Uso dei Template per implementare la classe generica Vettore!
Estratto del documento

#include <cstdlib>

#include <iostream>

#include <string>

using namespace std;

//classe template

template <typename T>

class Vettore

{

public:

Vettore(unsigned n = 0); // costruttore

T &operator[](unsigned i); // legge o scrive un elemento

~Vettore(); // distruttore

private:

T *vett; // puntatore al vettore allocato nello heap

unsigned dim; // dimensione del vettore

};

int main()

{ // Test della classe generica Vettore

unsigned i;

// Operazioni su interi

Vettore <int> v(10);

// Scrive nel vettore

for(i = 0; i < 10; i++)

v[i] = i + 1;

// Legge il vettore

for(i = 0; i < 10; i++)

cout << v[i] << '\t';

cout << endl;

// Operazioni su stringhe

Vettore <string> s(3);

// Scrive nel vettore

s[0] = "uno"; s[1] = "due"; s[2] = "tre";

// Legge il vettore

for(i = 0; i < 3; i++)

cout << s[i] << '\t';

cout << endl;

system("pause");

}

// Member function costruttore

template <typename T>

Vettore <T>::Vettore <T>(unsigned n)

{

dim = n;

if(dim) {

// Alloca nello heap lo spazio per contenere gli n elementi di tipo T

vett = new(nothrow) T[dim];

if(!vett) {

cerr << "Memoria esaurita. Fine del programma." << endl;

system("pause");

Dettagli
Publisher
2 pagine
76 download