Используется для перебора всех значений перечня.
После создания перечислитель не содержит текущего значения. Перечисление начинается с первого вызова Next(). Цикл перечисления выглядит так: while (enum1.Next()) Process1(enum1.Current()).
Изменения в контейнере не влияют на состояние перечислителя. Если в перечне будет удалено текущее значение перечислителя, то оно по прежнему будет присутствовать в перечислителе, а следующим будет значение, которое было после текущего. Если будет удалено значение после текущего, то оно уже не будет перечислено. Если в процессе перечисления в перечень будет добавлено новое значение, то оно будет перечислено.
Для доступа к значениям одного перечня можно использовать сразу несколько перечислителей.
Данный класс не является многопоточным. Чтобы получить доступ к эл-там перечня из разных потоков одновременно, следует создать перечислители для каждого потока.
См. определение в файле HandledList.h строка 133
Открытые типы | |
| typedef ValueT | Type |
Открытые члены | |
| Enumerator (const Enumerator &Src) | |
| Конструктор копирования. | |
| Enumerator & | operator= (const Enumerator &Src) |
| Оператор присвоения нового значения. | |
| Enumerator & | operator++ () |
| Перейти к следующему эл-ту. | |
| ~Enumerator () | |
| Деструктор. | |
| operator bool () const | |
| Возвращает Enumerated(). | |
| bool | operator! () const |
| Возвращает !Enumerated(). | |
| const Type & | operator * () const |
| Получить ссылку на текущее значение. | |
| const Type * | operator-> () const |
| Получить адрес текущего значения для доступа к его членам. | |
| bool | Enumerated () const |
| Возвращает true - если идет перечисление, т. | |
| const Type & | Current () const |
| Возвращает текущее значение перечислителя. | |
| bool | Next () |
| При первом вызове после создания или сброса начинает перечисление. | |
| void | Reset () |
| Сбросить перечислитель в исходное состояние, аналогичное состоянию после создания перечислителя. | |
Защищенные члены | |
| Enumerator (HandledList *List) | |
| Конструктор. | |
| HandledList * | List () const |
| Указатель на перечислитель. | |
| const ItemId & | CurrentId () const |
| Идентификатор текущего значения в списке эл-тов. | |
| ItemId & | CurrentId () |
| Идентификатор текущего значения в списке эл-тов. | |
Друзья | |
| class | HandledList |
| typedef ValueT Cntm::HandledList< ValueT, StoreT >::Enumerator::Type |
См. определение в файле HandledList.h строка 137
| Cntm::HandledList< ValueT, StoreT >::Enumerator::Enumerator | ( | const Enumerator & | Src | ) | [inline] |
Конструктор копирования.
Создает точную копию перечислителя Src (полностью копирует его состояние: текущее значение Current() (если идет перечисление), текущую позицию, флаг Enumerated()).
См. определение в файле HandledList.h строка 514
| Cntm::HandledList< ValueT, StoreT >::Enumerator::~Enumerator | ( | ) | [inline] |
| Cntm::HandledList< ValueT, StoreT >::Enumerator::Enumerator | ( | HandledList * | List | ) | [inline, protected] |
Конструктор.
Используется перечнем для инициализации перечислителя.
См. определение в файле HandledList.h строка 603
| Cntm::HandledList< ValueT, StoreT >::Enumerator & Cntm::HandledList< ValueT, StoreT >::Enumerator::operator= | ( | const Enumerator & | Src | ) | [inline] |
Оператор присвоения нового значения.
Производит сброс перечислителя и присвоение нового состояния (см. конструктор копирования).
См. определение в файле HandledList.h строка 539
| Enumerator& Cntm::HandledList< ValueT, StoreT >::Enumerator::operator++ | ( | ) | [inline] |
Перейти к следующему эл-ту.
Вызывает функцию Next(). См. функцию Next().
См. определение в файле HandledList.h строка 152
Перекрестные ссылки Cntm::HandledList< ValueT, StoreT >::Enumerator::Next().
| Cntm::HandledList< ValueT, StoreT >::Enumerator::operator bool | ( | ) | const [inline] |
Возвращает Enumerated().
См. флаг Enumerated().
См. определение в файле HandledList.h строка 162
Перекрестные ссылки Cntm::HandledList< ValueT, StoreT >::Enumerator::Enumerated().
| bool Cntm::HandledList< ValueT, StoreT >::Enumerator::operator! | ( | ) | const [inline] |
Возвращает !Enumerated().
См. флаг Enumerated().
См. определение в файле HandledList.h строка 167
Перекрестные ссылки Cntm::HandledList< ValueT, StoreT >::Enumerator::Enumerated().
| const Type& Cntm::HandledList< ValueT, StoreT >::Enumerator::operator * | ( | ) | const [inline] |
Получить ссылку на текущее значение.
См. Current().
См. определение в файле HandledList.h строка 172
Перекрестные ссылки Cntm::HandledList< ValueT, StoreT >::Enumerator::Current().
| const Type* Cntm::HandledList< ValueT, StoreT >::Enumerator::operator-> | ( | ) | const [inline] |
Получить адрес текущего значения для доступа к его членам.
См. Current().
См. определение в файле HandledList.h строка 177
Перекрестные ссылки Cntm::HandledList< ValueT, StoreT >::Enumerator::Current().
| bool Cntm::HandledList< ValueT, StoreT >::Enumerator::Enumerated | ( | ) | const [inline] |
Возвращает true - если идет перечисление, т.
е. перечисление было начато и не достигнут конец перечня, иначе false.
См. определение в файле HandledList.h строка 182
| const Type& Cntm::HandledList< ValueT, StoreT >::Enumerator::Current | ( | ) | const [inline] |
Возвращает текущее значение перечислителя.
Значение доступно только после первого вызова Next() и до тех пор, пока Next(), в том числе и первый, возвращает true. Значение Current() доступно, пока установлен флаг Enumerated().
См. определение в файле HandledList.h строка 187
| bool Cntm::HandledList< ValueT, StoreT >::Enumerator::Next | ( | ) | [inline] |
При первом вызове после создания или сброса начинает перечисление.
Если в перечне есть хотя бы 1 эл-т, то Current() будет содержать первый эл-т, флаг Enumerated() и возвращаемое значение будут равны true. Если значений нет, то значение Current() неопределено, а флаг Enumerated() и возвращаемое значение будут равны false.
При последующих вызовах будет производится считывание следующих значений. Если будет достигнут конец перечня, то значение Current() будет неопределено, а флаг Enumerated() и возвращаемое значение будут равны false.
См. определение в файле HandledList.h строка 568
| void Cntm::HandledList< ValueT, StoreT >::Enumerator::Reset | ( | ) | [inline] |
Сбросить перечислитель в исходное состояние, аналогичное состоянию после создания перечислителя.
См. определение в файле HandledList.h строка 592
| HandledList* Cntm::HandledList< ValueT, StoreT >::Enumerator::List | ( | ) | const [inline, protected] |
| const ItemId& Cntm::HandledList< ValueT, StoreT >::Enumerator::CurrentId | ( | ) | const [inline, protected] |
| ItemId& Cntm::HandledList< ValueT, StoreT >::Enumerator::CurrentId | ( | ) | [inline, protected] |
friend class HandledList [friend] |
См. определение в файле HandledList.h строка 206
|
|
© Овсеевич Р.В. Документация по CntmLib 1.1.4 от 28 May 2008. Создано системой
1.5.3
|