C++ multimap 的插入,遍歷,刪除


#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



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM