|
当我们遇到字符串与整数的映射关系时,用map使用很方便,所以我就整理了一些关于map的使用方法:
1、map的头文件是map.h
2、map的定义
如map<string,int>word,这样就定义了map的字符串到整数的对象word(就对象名),也可以定义整数到字符串的对象,具体看什么情况。注意定义时不能用char*。
具体例子如下:
map<string,int>age; //定义姓名到年龄的映射
age["zhangsan"]=20;
age["lisi"]=21;
下面介绍map的一些函数:
1、clear()
就是清除map对象的所有内容
如age.clear();这样就清楚了age的内容
2、erase(key)
删除key对应的元素
如age.erase("lisi");就删除了lisi的信息
3、size()
获取对象的元素个数
如n=age.size();则n=2(上面定义了2个元素);
4、begin()
获取对象的第一个元素的指针
5、end()
获取对象的最后一个元素的指针
6、find(key)
查找key对应的元素
如
typedef map<string,int>maps;
maps age;
maps::iterator it;
it=age.find("wangwu");
如果找到"wangwu"的元素,就返回它所对应的元素指针,否则就指向end();
7、元素的访问或遍历举例
typedef map<string,int>maps;
maps age;
age["zhangsan"]=20;
age["lisi"]=21;
maps::iterator it;
for(it=age.begin();it!=age.end();it++)
{
cout<<"name:"<<it->first<<" age:"<<it->second<<endl;
//显示各元素的值,first为string的内容,second为int的内容
}
最后输出为
name:zhangsan age:20
name:lisi age:21 |
|