STL之map

STL不是语法要点,而是工具,如果能解决问题,即使一点也不懂也没问题;如果能提供便利去编程,何乐而不为。

本文配合MFC的CString使用;map是键值对;

0、头文件

#include <memory>//stl没有.h

1、使用typedef类型定义

typedef std::map<CString,CString> S_S_MAP;
typedef std::map<CString,int> S_I_MAP;
typedef std::map<CString,CString>::iterator S_S_MAP_ITER;
typedef std::map<CString,int>::iterator S_I_MAP_ITER;

前面两个是map,后面是两个迭代器

2、插入数据

S_S_MAP sMap;
CString tmepStr1,tmepStr2;
...
sMap.insert(std::pair<CString,CString>(tmepStr1,tmepStr2));

3、删除所有

sMap.clear();

4、查找某个key是否存在,通过find返回的迭代器与end迭代器作比较

S_S_MAP_ITER iter;
iter = sMap.find(_T("some key name"));
if (iter != lmap.end())//存在
{
   ....  
}
原文地址:https://www.cnblogs.com/judes/p/10967288.html