void GetNextAssoc ( POSITIONamp; rNextPosition, CString & rKey, CObject * & rValue ) const;
Параметры
rNextPosition
Определяет ссылку на значение позиции , возвращаемым предыдущим вызовом GetNextAssoc или GetStartPosition.
rKey
Определяет возвращаемый ключ извлеченного элемента (строка).
rValue
Указывает возвращаемое значение извлеченного элемента ( CObject указатель). Дополнительные сведения об этот параметр приведены замечания.
Примечания
Извлекает элемент карты в rNextPosition, а затем обновляет rNextPosition обратиться к следующему элементу в схеме. Эта функция наиболее полезен для выполнения итерации всех элементов на карте. Обратите внимание, что последовательность позиции не обязательно то же значение ключа последовательность.
Если полученный элемент является последним в карте, то новое значение rNextPosition присваивается значение NULL.
RV&alue параметра обязательно для приведения типа вашего объекта к CObject * amp;, который является то, что компилятор требует, как показано в следующем примере:
CMyObject * ob;
карта.GetNext&Assoc (pos, ключ, (CObject * amp;) ПК)
Это не относится к GetNextAssoc для карт, основанных на шаблонах.
Пример
Смотрите CObList::CObList список CAge класс, используемая во всех примерах коллекции.
/ / Пример для CMapStringToOb::GetNextAssoc и CMapStringToOb::GetStartPosition
CMapStringToOb карта;
Позиция pos;
CString ключ;
Кейдж * ПА;
карта.SetAt ("Bart", новый Кейдж (13));
карта.SetAt ("Лиза", новый Кейдж (11));
карта.SetAt ("Гомера", новый Кейдж (36));
карта.SetAt ("Мардж", новый Кейдж (35));
/ / Итерацию всей карты, имя и возраст.
для (pos = карта.GetStartPosition(); POS! = NULL; )
{
карта.GetNextAssoc (pos, ключ, (CObject * amp;) ПА);
# ifdef _DEBUG
afxDump << ключ << ":" << pa << «\n»;
# endif
}
Результаты этой программы заключаются в следующем:
Лиза: клетка на $4724 11
Мардж: клетка на $47A8 35
Гомер: клетка на $4766 36
Барт: клетка на $45D 4 13
Обзор CMapStringToOb |nbsp; Члены класса | Иерархическая схема
См. также CMapStringToOb::GetStartPosition