GetNextAssoc
函数名称
GetNextAssoc,函数名称,该函数在遍历映射中所有元素时非常重要。
基本参数
CMap::GetNextAssoc
void GetNextAssoc(POSITION& rNextPosition, KEY& rKey, VALUE& rValue) const
说明:
获取rNextPosition位置的映射元素,然后将rNextPosition更新为映射中新的元素。该函数在遍历映射中所有元素时非常重要。
如果获取的元素为映射的最后一项,那么rNextPosition的新值将设置为零。
CMapStringToOb::GetNextAssoc
void GetNextAssoc( POSITION& rNextPosition, CString& rKey, CObject*& rValue ) const;
参数:
说明:
值得注意的是位置次序与关键码值次序不必相同。
对于参数rValue,要确保将对象类型设置为CObject*&形式,这是编译器所需要的,如下面例子所示:
CMyObject* ob;
map.GetNextAssoc(pos, key, (CObject* &)ob);
这并不是根据模板建立的映射中GetNextAssoc的真实结果。
示例说明
请参阅CObList::CObList,了解所有收集示例中使用的CAge类。
//example for CMapStringToOb::GetNextAssoc and CMapStringToOb::GetStartPosition
CMapStringToOb map;
POSITION pos;
CString key;
CAge* pa;
// Iterate through the entire map, dumping both name and age.
for( pos = map.GetStartPosition(); pos != NULL; )
map.GetNextAssoc( pos, key, (CObject*&)pa );
#ifdef _DEBUG
#endif
该程序的运行结果如下:
Lisa : a CAge at $4724 11
Marge : a CAge at $47A8 35
Homer : a CAge at $4766 36
Bart : a CAge at $45D4 13
参考资料
最新修订时间:2023-12-31 14:21
目录
概述
基本参数
参考资料