C++ 之 Map

Map


map 是C++ STL中的关联容器, key-Value键值对存储,一对一的映射关系。

内部结构采用的是红黑树, 它会实现对数据的自动排序 ,所以map内部所有的数据都是有序的。

#include <map>

定义的结构: map<数据类型1, 数据类型2> 变量名

map<int, int> m1;
map<int, string> m2;

std::unordered_map<std::string, Texture2D*> _textures;
Map<std::string, SpriteFrame*> _spriteFrames;
Map<std::string, Animation*> _animations;

常用的方法:

  • empty 检测是否为空

  • find 返回key所在的位置

  • size 返回map映射中的对数

  • clear 清空map中的所有元素

  • begain 返回头部的迭代器

  • end 返回尾部+1的迭代器

  • rebegin 返回尾部的迭代器

  • rend 返回头部-1的迭代器

  • insert 插入元素

// 插入pair对象
m1.insert(pair<int, string>(1, "str"));
// 插入value_type数据
m1.insert(map<int, string>::value_type(2, "str"));
// 通过赋值方法插入
m1[111] = "666"
  • erase 删除元素
// 删除元素的迭代器
m2.erase(it);
// 删除元素的key
m2.erase(key);
// 删除指定范围内的元素
m2.erase(first, last);	

基本使用:

#include<iostream>
#include<map>
using namespace std;
int main() {
	map<int,string> m1;
	m1[1]="ctx";
	m1[2]="cxt";
	m1[3]="txc";
	m1[10]="txt";
	m1[5]="666";
	map<int,string>::iterator it;
	for(it=m1.begin();it!=m1.end();it++)
	{
		cout<< it->first <<" "<< it->second <<endl;
	}
	//it->为Key,it->second为Value 
}

待补充…

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鹤九日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值