[ Zed Mc Jack @ 16.06.2008. 13:07 ] @
Nešto mi ne valja u ovoj petlji sa vektorom i pokušajem brisanja jednog elementa iz vektora preko iteratora.
Code:
//izostavljen početak
for (iter=spisak.begin(); iter!=spisak.end();++iter)
if (*iter==title)
spisak.erase(iter);
//izostavljen kraj

puca sa greškom na poslednjoj liniji
609 C:\Dev-Cpp\include\c++\3.4.2\bits\stl_iterator.h invalid conversion from `const std::string* const' to `std::string*'

Ima li neko ideju šta ne valja i kako bi trebalo?
[ karas @ 16.06.2008. 18:11 ] @
Da nisi iterator deklarisao kao const?
[ Zed Mc Jack @ 16.06.2008. 19:27 ] @
Jesam
Code:
vector <string>::  const_iterator iter;

što?
[ karas @ 16.06.2008. 20:00 ] @
const iteratori tome i služe - da spreče menjanje kontejnera na koji pokazuju. Probaj sa "običnim" iteratorom.
[ Zed Mc Jack @ 16.06.2008. 20:34 ] @
E hvala, ja lupao glavu zašto ne radi ono što treba da radi, kad ono to tako i treba da bude. :-)
Bah, sad sam pročitao još jedared šta piše o const iteratoru i lepo piše da ne može da se menja element na koji pokazuje, samo sam ja to prevideo.
Uzgred, poruke o grešci koje daje Dev-C++ mi ne pomažu baš da lociram gde grešim ili sam ja previše navikao na Fox-ov help sistem.
[ karas @ 16.06.2008. 21:15 ] @
Pa napisao je invalid conversion from `const std::string* const' to `std::string*'.:)
Na http://www.thefreecountry.com/compilers/cpp.shtml imaš spisak besplatnih kompajlera pa možda da probaš sa nekim od njih ako ti više leži.
[ 1jedini @ 17.06.2008. 10:48 ] @
Da ti nije kojim slucajem spisak const?