Итератор берет элементы непоследовательно
От: Ivan093 Россия  
Дата: 14.10.11 14:04
Оценка:
Доброго времени суток всем!

Есть простенький класс MyClass, наследуемый от std::vector<MyStruct>, в него только добавлены новые методы, а старые не переопределены.
Этот класс-вектор заполняется последовательно значениями.
Далее в коде есть конструкция:
std::vector<MyStruct*>::iterator it=CurrentRow; //Указатель на текущий элемент класса
while(it != MyClass->end()) {

it++
}

Дак вот в этом цикле в некотором случае (этот код повторяется многократно) итератор возвращает элементы не последовательно (не так как они добавлялись), а берет несколько элементов назад, это даже по адресу памяти видно, далее же идет по порядку.
Где ошибка? Понять не могу почему так...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.