Здравствуйте!
У меня такая проблема: нужно из списка удалить элемент удовлетворяющий определённому критерию. Вот, пишу примерно такой код:
...
class THEXData { public: char * Data; long Address; byte DataCount; THEXData( char count ); ~THEXData(); };
...
list<THEXData> lst; ... list<THEXData>::iterator iter = lst.begin(); for ( ; iter != lst.end(); iter++) { if ( iter->Address == 0xFFE0 ) lst.erase( iter ); }
Первый раз когда я написал подобный код под Виндой в C++ Builder 5, он у меня вытер не только этот элемент, но и все последующие. Второй раз я вставил такой код в консольный проект - начал выбрасывать исключение. Попробовал компилить g++ - такая же лабуда.
Может это не STL глючит, а я? Подскажите, плиз.