C/C++教程

c++笔记 STL map容器赋值和构造

本文主要是介绍c++笔记 STL map容器赋值和构造,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
//map容器中所有元素都是pair
//pair的第一个元素为key(赋值),起到索引作用,第二个元素为value(实值)
//所有元素都会根据元素的键值自动排序
//本质:map/multimap属于关联式容器,底层结构使用二叉树实现
//优点:
//可以根据key值快速找到value值
//map与multimap区别:
//map不允许容器中有重复key
//multimap允许容器中有重复key值元素
#include<iostream>
#include<map>
using namespace std;
void printMap(const map<int,int>& m) {
	for (map<int,int>::const_iterator it = m.begin(); it != m.end(); it++) {
		//这里获取不可以单纯*it,因为有两个值
		cout << "key = " << (*it).first << "value = " << it->second << endl;
	}
	cout << endl;
}
void test01() {
	map<int,int>m;
	m.insert(pair<int, int>(1, 10));
	m.insert(pair<int, int>(2, 20));
	m.insert(pair<int, int>(4, 30));
	m.insert(pair<int, int>(3, 40));
	//会按key值自动排序
	printMap(m);

	//拷贝构造
	map<int,int>m2(m);
	printMap(m2);

	//赋值
	map<int,int>m3;
	m3 = m2;
	printMap(m3);
}
int main() {
	test01();
}

这篇关于c++笔记 STL map容器赋值和构造的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!