Название: несуществующий указатель на объект вектора Отправлено: Karl-Philipp от Октябрь 28, 2008, 23:55 Всем привет!
Допустим, есть класс с неким членом - свойством1 типа bool. Существует вектор с указателями на объекты этого класса. Есть также две функции В первой функции (initFunction()) вектор заполняется n-ным числом указателей на объекты со значеним свойства1 false. Во второй функции (processFunction()) вектор заполняется (дополняется) указателями на объекты со значением свойства1 true. Причем количество создаваемых указателей на объекты во второй функции должно равняться количеству уже существующих указателей на объекты в векторе. Возьми да запиши конкретное число в цикл(во второй функции для заполнения), так нет, мне вздумалось перебирать объекты вектора до тех пор, пока свойство1 у очередного из них не будет равно true. Вот тут и начались проблемы: откуда не возьмись при переборе существующих элементов вектора компилятор натыкается на несуществующий объект. Как такое может быть??? VS2002 Чуть поправил условие + привожу код: Класс: Код: #ifndef SOMECLASS_H Реализция класса: Код: #include "someclass.h" использование класса: Код: #include <vector> Название: Re: несуществующий указатель на объект вектора Отправлено: Tonal от Октябрь 29, 2008, 09:46 При изменении размеров вектора все его итераторы становятся невалидными.
Название: Re: несуществующий указатель на объект вектора Отправлено: Karl-Philipp от Октябрь 29, 2008, 09:49 Спасибо большое, Tonal :)
Решение: создал еще один вектор, который заполняю, перебирая объекты первого. |