本文所介绍的std::map用法基于C++11,std::map定义于头文件<map>中,其定义如下:
std::map 是有序键值对容器,它的元素的键是唯一的。用比较函数 Compare
排序键。搜索、移除和插入操作拥有对数复杂度。 map 通常实现为红黑树。其包含成员类型其成员函数如下:
成员类型
成员类型 | 定义 |
---|---|
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 | value_type& |
const_reference | const value_type& |
pointer | std::allocator_traits<Allocator>::pointer |
const_pointer | std::allocator_traits<Allocator>::const_pointer |
iterator | 双向迭代器 (BidirectionalIterator ) |
const_iterator | 常双向迭代器 |
reverse_iterator | std::reverse_iterator<iterator> |
const_reverse_iterator | std::reverse_iterator<const_iterator> |
成员类
成员类 | 作用 |
---|---|
value_compare | 比较类型为value_type 的对象 |
成员函数
成员函数 | 作用 |
---|---|
(构造函数)
|
构造 set |
(析构函数)
|
析构 set |
operator=
|
赋值给容器 |
get_allocator()
|
返回相关的分配器 |