PDA

Visualizza la versione completa : [C++] Svuotare un array


freetom
08-08-2009, 00:29
Ma non con un modo ricorsivo tramite for.. togliendo un elemento alla volta... bens una cancellazione totale istantanea.. (inizializzazione..) rispetto ai molti valori raccolti...

ho provato con un semplice

nomedelmioarray;

ma da una verifica risulta che i valori sono sempre presenti....

thanks



:ciauz:

YuYevon
08-08-2009, 08:58
Innanzitutto con "cancellazione" intendi l'annullamento dei valori dell'array? E poi, che tipo di elementi ha quest'array?

Vedi comunque memset() (http://www.cplusplus.com/reference/clibrary/cstring/memset/)

MItaly
08-08-2009, 09:38
Qualunque metodo di reinizializzazione dell'array non atomico, ma procede iterativamente su ciascun elemento; l'unica operazione di cancellazione che non itera sull'array la sua deallocazione, la cui fattibilit dipende da come hai allocato l'array.
In ogni caso, come mai non ti va bene la reinizializzazione iterativa?

freetom
10-08-2009, 11:39
Originariamente inviato da YuYevon
Innanzitutto con "cancellazione" intendi l'annullamento dei valori dell'array? E poi, che tipo di elementi ha quest'array?

Vedi comunque memset() (http://www.cplusplus.com/reference/clibrary/cstring/memset/)

Il tipo di elementi numerico...

questo memset non riesco proprio a capirlo... :stordita: :)

Grazie comunque :ciauz:

oregon
10-08-2009, 11:48
La domanda che ti facevano e'

e' un vector? un array di interi allocato normalmente?

Altro?

freetom
10-08-2009, 13:18
Originariamente inviato da oregon
La domanda che ti facevano e'

e' un vector? un array di interi allocato normalmente?

Altro?

credo un vector essendo inizializzato con questa dicitura...

Stoicenko
10-08-2009, 15:44
Allora mi chiedo perch ti ostini a sbagliare i termini come fosse all'acqua di rose.. 5 post per dire che un vector che tu chiami "array" :dh: :dh: :dh: :dh:



char pippo[50];
char* pippo = new char[50];


questi sono array

il vertor un OGGETTO

YuYevon
10-08-2009, 16:18
E per cancellare gli elementi di un vector esiste il metodo erase() (http://www.cplusplus.com/reference/stl/vector/erase/)

freetom
10-08-2009, 20:23
Originariamente inviato da YuYevon
E per cancellare gli elementi di un vector esiste il metodo erase() (http://www.cplusplus.com/reference/stl/vector/erase/)

// erase the elements:
ritardi.erase (ritardi.begin(), ritardi.begin()+ritardi.size());
terzineconritardi.erase (terzineconritardi.begin(), terzineconritardi.begin() +terzineconritardi.size());
vec.erase(vec.begin(),vec.begin()+vec.size());
vec2.erase(vec2.begin(),vec2.begin()+vec2.size());


cout << "VERIFICA svuotamento arrays...";
cin.get();
cout << ritardi[0];
cout << terzineconritardi[0];
cout << vec[0];
cout << vec2[0];
cin.get();

risultato?

caratteri strani e bip continui... :dh: :oVVoVe:

Come posso svuotare il vector ritardi di TUTTI i suoi elementi...??? Se questa sintassi non va bene... :confused: :confused: :confused:

tnx!

:ciauz:

Alex'87
10-08-2009, 21:03
Ma una cosa non capisco: vuoi togliere tutti gli elementi da un vector (ed il risultato sar che vettore.size() = 0) oppure vuoi che tutti gli elementi del tuo vettore vengano posti (ad esempio) a zero? :master:

Loading