一 前言
关联容器(associative container) map对象的元素是键值对,每个元素包含两部分键和键关联的值。
二 map对象的定义
使用关联容器map需要添加头文件
#include <map>
std::map<int, CString> m_mapFruit;
该语句定义了一个名为m_mapFruit的map对象
三 map对象元素的插入
方法一
m_mapFruit.insert(std::map<int, CString>::value_type (0, L"苹果"));
方法二
m_mapFruit.insert(std::pair<int, CString>(1,L"葡萄"));
方法三
m_mapFruit.insert(std::make_pair(2,L"橘子"));
四 map对象元素的遍历访问
CString strTemp=L"";
std::map<int, CString>::iterator iter;
for(iter = m_mapFruit.begin(); iter != m_mapFruit.end(); iter++)
{
strTemp.Format(L"%d,%s",iter->first,iter->second);
AfxMessageBox(strTemp);
}
五 将一个map对象赋值给另一个map对象
std::map<int, CString> mapTemp;
mapTemp.insert( m_mapFruit.begin(),m_mapFruit.end());
六 map对象元素的清空
方法一
m_mapFruit.clear();
方法二
m_mapFruit.erase(m_mapFruit.begin(),m_mapFruit.end());
以上程序在 VC++2005 Unicode字符集下调试通过