几何尺寸与公差论坛

 找回密码
 注册
查看: 1693|回复: 0

【转帖】map的使用

[复制链接]
发表于 2008-10-27 11:02:09 | 显示全部楼层 |阅读模式
当我们遇到字符串与整数的映射关系时,用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
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|几何尺寸与公差论坛

GMT+8, 2024-5-13 09:33 , Processed in 0.035639 second(s), 20 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表