#include <iostream>
#include <map>
#include <string>
using namespace std;
int main()
{
multimap<string, string> authors;
// 插入元素, 引入的頭文件是 map
authors.insert(make_pair(
string("Evin"), // 這個是 Key
string("Hi")));
authors.insert(make_pair(
string("Evin"), // 跟上面的一樣,是同一個key
string("Hello")));
typedef multimap<string, string>::const_iterator mmap_cit;
// 第一種遍歷方式
mmap_cit beg = authors.lower_bound("Evin");
mmap_cit end = authors.upper_bound("Evin");
while(beg != end)
{
cout<<beg->second<<endl;
++beg;
}
// 另外一種遍歷方式
pair<mmap_cit, mmap_cit> pos = authors.equal_range("Evin");
while(pos.first != pos.second)
{
cout<<pos.first->second<<endl;
++pos.first;
}
cout<<authors.erase("Evin")<<endl; // erase 返回刪除的元素個數
return 0;
}
利用 multimap 能夠做到一個key, 同一時候相應多個value
