On pet, 2006-05-05 at 10:04 +0200, Gregor Berginc wrote:
> > ... tako nekako... potem pridejo še podatkovni tipi list pa map, ki so
> > prav tako zelo uporabni... skratka če uporabljaš C++ brez STLja je tako
> > kot če v avtu z avtomatskim menjalnikom vseeno menjaš prestave ročno.
> > saj deluje, samo to ni point.
> 
> Samo pazi, ce bos shranjeval kazalce na objekte znotraj seznama, torej
> nekaj takega
> 
> std::vector<my_class*> seznam;
> 
> Vsi vsebniki v STL-u so namrec value-based. Metoda
> 
> seznam.clear()
> 
> bo sicer res pocistila seznam. Tezava pa je, da ne bo povzrocila
> unicenje vseh elementov (destruktorji elementov se ne klicejo!). Da ne
> govorim, kar se dogaja, ce zacnes izvajat razne algoritme STL-a... Jaz
> sem po dolgih urah koncno presel na "pametne" kazalce, ki ovijejo
> kazalce tako, da so navzven v bistvu vrednosti...

seveda se ne klicejo ce pa imas pointerje na my_class... ce tam izpusits
* se bo vektor z clearom seveda povsem pocistil...

std::vector<my_class*> seznam;

je namrec ekvivalent 

my_class **seznam;

... ja c++ nima garbage kolektorja in moras vedeti kaj delas... 

vsi pa cakamo na C++0x, da bomo koncno imeli normalen foreach in podobno... :)



bye
andraz

_______________________________________________
lugos-list mailing list
lugos-list@lugos.si
http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-list

Одговори путем е-поште