|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
|
[c++]vector o array?
dopo aver dimostrato quanto sono scarso a programmare in più occasioni ho riniziato a dare un'occhiata un pò più approfondita al libro di stroustrup.
![]() ![]() nei suggerimenti alla fine del 3 capitolo al punto 9 consiglia di usare vector, list e map al posto dei semplici array. data la maggiore complessità però suppongo che rendano più pesante il programma. cosa mi dite? dico cavolate? conviene sul serio usare SEMPRE dei contenitori al posto degli array? ciao! |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: May 2003
Città: Rimini
Messaggi: 2279
|
Dalla mia modestissima esperienza di programmazione, la penso così: quando devi creare cose piccole, usa pure gli array, tenendo però presente che il C++ come il C ha pochi controlli su di essi e quindi rischi di avere degli errori indesiderati a run-time.
I contenitori, essendo oggetti, sicuramente rendono più pesante il programma, ma secondo me questo "problema" passa in secondo piano quando vai a scrivere il codice... Prima di tutto perché non ti devi, ogni volta, creare da zero tutto il codice per la gestione (non so se hai mai provato a crearti una lista da solo, è una palla!), poi perché il codice è molto più pulito (con evidenti vantaggi in fase di debug). Io fossi in te farei così: essendo alle prime armi, farei programmi con array e liste per fare un po' di pratica, se non altro per capirne i principi di funzionamento (che poi sono quelli su cui si basano anche i contenitori). Poi, una volta avendo chiari questi concetti, mi butterei a capofitto a usare solo i contenitori, senza preoccuparsi delle prestazioni che comunque avrebbero un degrado non avvertibile. Ho detto la mia ![]() Bye
__________________
Gigabyte 965P-DS3 ¤ E6600@400*8 ¤ Scythe Ninja Plus Rev.B ¤ Ram 4GB ¤ HD SSD Crucial M4 128GB
Gainward 4850 Golden Sample ¤ Antec NEO 550HE ¤ CM Centurion 534 ¤ Dell Ultrasharp U2312HM Notebook Asus N551JW ¤ i7-4750HQ ¤ nVidia 960M 4GB ¤ 16GB DDR3 ¤ SSD Intel 850EVO 500GB |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2002
Città: Vigevano(PV)
Messaggi: 2124
|
oltretutto magari cercando di creare qualcosa di ottimizzato si finisce x ottenere l'effetto contrario
__________________
Gnu/Linux User ![]() |
![]() |
![]() |
![]() |
#4 | |
Bannato
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
|
Re: [c++]vector o array?
Quote:
Codice:
private: value_type* data; ... public: value_type& operator[](size_type i) { return data[i]; } Negli altri casi il problema non si pone, visto che si tratta di strutture dati diverse pensate per necessita' diverse. Usare un array quando sarebbe piu' adatta una lista vuol dire complicarsi la vita, visto che la soluzione pseudo-furba potrebbe risultare molto piu' lenta di quella naturale. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:19.