|
class employee
{
public:
employee(int ii, const employee_data& e) : identification_code(i), description(e) {}
int identification_code; // 标识雇员的关键词
employee_data description;
bool operator<(const employee& e) const
{
return identification_code < e.identification_code;
}
};
现在我们声明雇员集合set(multiset):
set<employee, less<employee>> employee_set;
multiset<employee, less<employee>> employee_multiset;
此时,employee既是Key type又是Value type。
如果我们想把雇员信息保存在映射map(multimap)中,则如下声明:
map<int, employee_data, less<int>> employee_map;
multimap<int, employee_data, less<int>> employee_multimap;
此时Key type是int,而Value type是employee_data。
所有的关联容器都有以下成员函数:begin, end, rbegin, rend, empty, size, max_size, swap、insert、erase等,其意义同顺序容器一样。下面我们用插入函数insert想关联容器中加入元素:
employee_data ed1(“john”, 1, 5000); // 雇员John的信息
employee_data ed2(“tom”, 5, 2000); // 雇员tom的信息
employee_data ed3(“mary”, 2, 3000); // 雇员mary的信息(责任编辑:admin) |
