Re[3]: STL вопрос новичка
От: Bell Россия  
Дата: 11.03.04 16:12
Оценка:
Здравствуйте, ArcD, Вы писали:

AD>Здравствуйте, Bell, Вы писали:


B>>смотри в сторону std::vector


AD>Спасибо.

AD>Пробовал:

AD>typedef vector<Piece> PEACELIST;

AD>PEACELIST list;

AD>добавляю элементы:


AD>list.push_back(p);


AD>а вот как читать то? Если p=list.pop_back(), то доступ получается последовательный, а нужен произвольный по индексу как в обычном массиве.

AD>Или так нельзя?

Ну, pop_back — это вообще удаление последнего элемента из контейнера.
Надо так:

for(int i = 0; i < list.size(); ++i)
   list[i].field1 = ...


или так:

for(PEACELIST::iterator it = list.begin(), ite = list.end(), it != ite; ++it)
   it->field1 = ...


ЗЫ
list — неудачное название. В STL есть контейнер с этим именем.
Любите книгу — источник знаний (с) М.Горький
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.