博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【c++】STL 容器 unordered_map用法详解
阅读量:2356 次
发布时间:2019-05-10

本文共 1248 字,大约阅读时间需要 4 分钟。

  • 这里对unordered_map进行一些简单的介绍,包括其基本用法。更加详细的介绍请学习cplusplus网站相关资料。

一、定义

template < class Key,                                    // unordered_map::key_type           class T,                                      // unordered_map::mapped_type           class Hash = hash
, // unordered_map::hasher class Pred = equal_to
, // unordered_map::key_equal class Alloc = allocator< pair
> // unordered_map::allocator_type > class unordered_map;
  • 定义看不懂,没事留着往后有能力看懂了在慢慢看,我们先来看下它是干什么么用的。

    cplusplus中对其介绍如下(想看的看下,不想看的跳过):
    在这里插入图片描述
    这部分介绍主要说明了一下几点:

    • 首先unordered_map是一个将key和value关联起来的容器,它可以高效的根据单个key值查找对应的value.
    • key值应该是唯一的,key和value的数据类型可以不相同。
    • unordered_map存储元素时没有进行排序,只是根据key的哈希值,将元素存在指定位置,所以根据key查找单个value时非常高效,平均可以在常数时间内完成。
    • unordered_map查询单个key的时候效率比map高,但是要查询某一范围内的key值时比map效率低。
    • 可以使用[]操作符来访问key值对应的value值。
  • 然后其它更加详细的介绍请移步cplusplus

二、用法示例

#include 
#include
using namespace std;int main(){
string key="123"; int value=4; unordered_map
unomap;//创建一个key为string类型,value为int类型的unordered_map unomap.emplace(key, value);//使用变量方式,插入一个元素 unomap.emplace("456", 7);//也可以直接写上key和value的值 cout<
  • 更多方法请参考cplusplus.
  • 然后上面代码中用到的for循环方法,可以在看到。

转载地址:http://gwbtb.baihongyu.com/

你可能感兴趣的文章
IOS_UIWebView字体大小、字体颜色、背景色
查看>>
pathForResource:imgPath
查看>>
实现类似金山点击首页内存清理后跳转到内存页面效果
查看>>
ARC写的代码 外部非ARC环境调用时到底是否需要release
查看>>
关于上拉刷新控件MJRefresh 上拉时当加载出来后仍会自动往上滑动的解决
查看>>
IOS开发之——objectForKey与valueForKey在NSDictionary中的差异
查看>>
setValue和setObject的区别
查看>>
加快XCode的编译链接速度(200%+)—XCode编译速度慢的解决方案
查看>>
AFNetWorking使用
查看>>
GCD延迟实现的动画 效果
查看>>
Mac也能读取Android设备文件
查看>>
xcode6 文档自动标注VVDocumenter更新后支持
查看>>
图片自适应uiimageview
查看>>
CGImageCreateWithImageInRect截图问题
查看>>
iOS程序安全-代码混淆
查看>>
iOS的主要框架介绍
查看>>
copy
查看>>
iPhone-NSAssert使用
查看>>
NSAssert用法
查看>>
关于 retainCount 的疑问
查看>>