widzę gdzieś to wspomina:Iterator C++ dla pułapek pętli?
for (itr = files.begin(); itr < files.end(); ++itr) // WRONG
for (itr = files.begin(); itr != files.end(); ++itr) // ok
Dlaczego jest pierwszym wyrazem źle? Zawsze używałem pierwszego wyrażenia i nie miałem żadnych problemów.