STL

作者: Supreme_DJK | 来源:发表于2019-04-05 09:40 被阅读0次

hash_map、hash_set

  • 底层实现是hash_table(vector + linklist)

  • SGI hashtable使用开链法解决hash冲突、SGI hashtable无法处理处理除以下几个类型外的元素:

    • char、int、long
    • 欲处理除以上类型的元素,像是直接处理string会出错。需要用户自己自定义hash funciton
  • 现在已经不建议使用,转而使用unordered_map、unordered_set

仿函数

  • 一个“行为类似函数”的对象,其类别定义(可以定义函数中使用的变量、即成员变量)中必须自定义(或者重载)funciton call运算子(operator()),拥有了这样的运算子后,我们就可以在仿函数对象后面加上一对小括号,以此调用仿函数所定义的operator()

迭代器

在STL中,迭代器主要分为5类。各自是:输入迭代器、输出迭代器、前向迭代器、双向迭代器和随机訪问迭代器。

    输入迭代器:仅仅读。支持++、==、!=;

    输出迭代器:仅仅写,支持++;

    前向迭代器:读写,支持++、==、!=。

    双向迭代器:读写,支持++、--。C++的全部标准库容器都至少在双向迭代器的层次上。;

    随机訪问迭代器:读写,支持++、--、[n]、-n、<、<=、>、>=。

相关文章

  • stl简介

    stl stl简介 1. 什么是STL? STL(Standard Template Library),封装基本数...

  • C++标准库结构与使用

    本文预览: 标准库和STL STL的六大组件 STL容器分类 STL容器使用 标准库和STL ** 我们在写C++...

  • GeekBand笔记: STL与泛型编程(容器)

    stl stl 6 componentsallocatorcontaineralgorithmiteratorfu...

  • Boolan - C++学习笔记 _STL - 第一周

    STL与泛型编程 一、STL是什么 STL(Standard TemplateLibrary),即标准模板...

  • C++ STL

    STL STL 是“Standard Template Library”的缩写,中文译为“标准模板库”。STL 是...

  • C++基础一文通(六)STL

    一. STL 标准模板库 STL(Standard Template Library,标准模板库) STL 从广义...

  • C++ STL是什么

    STL 组件主要包括容器,迭代器、算法和仿函数。STL 基本结构和 STL 组件对应。 STL 主要由迭代器、算法...

  • C++ STL编程

    一、STL简介 1.1 初识STL STL(Standard Template Library,即标准模版库)是一...

  • stl

    STL(标准模板库)基本概念 一、什么是STL STL(Standard Template Library,标准模...

  • GEEKBAND BOOLAN STL第一周

    STL与泛型编程 一、STL是什么 STL(Standard TemplateLibrary),即标准模板库,是一...

网友评论

      本文标题:STL

      本文链接:https://www.haomeiwen.com/subject/dehqiqtx.html