Boa tarde. Eu gostava de fazer o varrimento dos objectos que tenho numa list de c++ mas dá-me o seguinte crash: "list iterators incompatible" Defini uma list desta maneira: #include <list> #include <algorithm> using namespace std; list<LugarLigado> lg; E em qualquer método que eu queira fazer o varrimento da mesma com um iterador dá-me esse estouro. Deixo aqui o exemplo de um método desses: void Lugar :: escreve(ostream & out)const { out << this->getNomeLugar(); //varrimento da list aqui for(list<LugarLigado> :: iterator it = this->getLugarLigado().begin(); it != this->getLugarLigado().end(); it++) { out << *it << endl; } } ostream & operator << (ostream & out, const Lugar& l) { l.escreve(out); return out; } Se alguém me conseguir ajudar seria óptimo. Obrigado