|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 | |
|
Bannato
Iscritto dal: Nov 2002
Città: PV
Messaggi: 1210
|
[C++]Problema con template 2
Ora ho deciso di fare sta funz:
Codice:
template<class T>
void Vettore<T>::Ridimensiona(int new_dim)
{
// Copia in una var temporanea
T tmp = new T[dimensione];
tmp = elementi;
int old_dim = dimensione;
// Cancella
delete[] elementi;
delete dimensione;
// Ricrea con nuova dim
elementi = new T[new_dim];
for(int i=0;i<old_dim;i++)
{
elementi[i] = tmp[i];
}
delete[] tmp;
}
Quote:
|
|
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
tmp = elementi non va bene...così copi solamente il puntatore...
tmp inoltre deve essere un T *... Perchè fai la delete su dimensione ? dimensione non è un puntatore... Codice:
T *tmp = new T[new_dim];
int n = (new_dim < dimensione)?new_dim:dimensione;
for(int i=0; i<n; ++i)
{
tmp[i] = elementi[i];
}
delete[] elementi;
elementi = tmp;
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:46.


















