STL 容器与函数对象的深入解析
1. 映射(Map)的定义与使用
映射的定义需要三个模板参数,例如:
map<string, int, less<string> > maStates;
- 第一个参数 :键的类型,这里是
string,代表州名。 - 第二个参数 :值的类型,这里是
int,代表人口数量(以千为单位)。 - 第三个参数 :指定键的排序方式,这里使用
less<string>按州名的字母顺序排序。
我们还可以定义一个迭代器来遍历这个映射。输入数据存储在两个单独的数组中(在实际程序中可能来自文件),将数据存入映射的操作如下:
mapStates[name] = pop;
这看起来就像向普通数组中插入元素,但数组索引 name 是一个字符串,而不是整数。当用户输入州名时,程序可以通过以下语句找到对应的人口数量:
pop = mapStates[name];
除了使用数组索引语法,我们还可以使用迭代器访问映射中条目的键和
超级会员免费看
订阅专栏 解锁全文
1163

被折叠的 条评论
为什么被折叠?



