【C++】STL中map的详细使用说明

说明

std::map是一个有序关联容器包含具有唯一键的键值对key-value键使用比较函数Compare比较来进行排序
搜索,删除和插入操作具有对数复杂性。map通常实现为红黑树。
定义于头文件 <map>
特别注意,map中同一个键值只能存在一个实体
map的特点是增加和删除节点对迭代器的影响很小,除了那个被操作的节点,对其他的节点都没有什么影响(只是内部的一些指针指向的改变)。对于map的迭代器来说,可以修改实value,而不能修改key

内部构造(基本操作函数和成员)

1、成员类型

成员类型 Definition
key_type Key
mapped_type T
value_type std::pair<const Key, T>
size_type 无符号整数类型(通常是 std::size_t
difference_type 有符号整数类型(通常是 std::ptrdiff_t
key_compare Compare
allocator_type Allocator
reference Allocator::reference(C++11 前)value_type& (C++11 起)
const_reference Allocator::const_reference (C++11 前) const value_type& (C++11 起)
pointer Allocator::pointer (C++11 前)std::allocator_traits<Allocator>::pointer (C++11 起)
const_pointer Allocator::const_pointer (C++11 前) std::allocator_traits<Allocator>::const_pointer (C++11 起)
iterator 双向迭代器(BidirectionalIterator)
const_iterator 常双向迭代器
reverse_iterator std::reverse_iterator<iterator>
const_reverse_iterator std::reverse_iterator<const_iterator>

2、成员函数


元素的访问

名称 说明
at (C++11) 访问指定的元素,同时进行越界检查 (公开成员函数)
operator[] 访问指定的元素 (公开成员函数)

迭代器

名称 说明
be
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值