STL简介

2023-05-16

目录

一 STL是什么

二 STL怎么产生的

三 STL的六大组件


一 STL是什么

STL是c++标准库的重要组成部分。包含数据结构和算法的框架。

比如:vector list sort-》STL

Istream ostream -》标准库

STL是标准库的一个子集。也就是说vector,list等是在std::这个命名空间域中的。

二 STL怎么产生的

惠普实验室完成后开源的。任何人都可以免费使用,但是一旦你使用它创造出有价值的东西,相应的也必须要开源。

三 STL的六大组件

空间配置器:简化的内存池,提高效率。

拿string举例子

为什么要学习string?string有什么意义呢?

使用广泛,相当于是定义一个的类,可以用来:存储名字,身份证号,地址……

虽然不是和STL一起产生的,但是符合STL规范。

类模板

为什么要设计成模板,为什么存在这么多种的string,这些不同的string和最初的string有什么关系?

string是用一个字符的顺序容器来实现的支持动态增长的char的字符数组

为什么有那么多种类的串?

wchat_t宽字符为unicode编码来准备的。

字符数组代表对应的字符串,他们存储信息代表不同的文字。

之前接触的ascall 是最先产生的,标准是针对美国国家标准局的,用于美国标准信息交换。

一个字符就能表示英美文字因为英美文字只包含字母数字+标点符号。

一个char能表示256种状态

字符对应0101,ascall对应编码表,能很好地去表示英文。

内存中存储的是对应的整型值,根据ascall表中的映射关系一一对应来显示。

ASCALL码是什么?

英文字符在内存中所存储的值

计算机推广后,要表示全世界的其他文字,那么编码表就丰富了。编码表:内存存的值和对应文字符号的映射关系

为了更好表示不同国家的文字,设计出utf-8 utf-16 utf -32系列的编码规则。

其他编码表:多个字符来设计。

utf-8八个比特位一个字节,兼容ASCALL码。

不同种类的编码格式能支持不同国家的文字

宽字符-》两个字节一个字符或者三个字节一个字符-》更好的表示一个国家的文字

Unicode-》万国码 表示各个国家的文字产生的

gbk一般用于中文编码,台湾繁体字。

拿中文举例子:

中文用char映射不下

一个字符不能表示完汉字就用两个字符来对应,如果两个还是标识不完整就用三个char来对应。

常见汉字其实就用两个字符编码,他有六万多种状态,与内存中存储对应的数字,根据映射关系对应成对应的汉字。

 

汉字编码,一般为了兼容ASCALL 头几个比特位是和英文状态一样的。某个固定规律开始才是汉字

并且中文编码把同音字编码在一起,净网系统就运用了这个原理。

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STL简介 的相关文章

随机推荐

  • spring整合ehcache找不到org.springframework.cache.ehcache.EhCacheCacheManager的解决方案

    一般org springframework cache ehcache EhCacheCacheManager和org springframework cache ehcache EhCacheManagerFactoryBean会同时找不
  • CC3200之GPIO引脚分析

    预备知识 xff1a xff08 1 xff09 volatile关键字 xff1a volatile定义的变量一般为无需开发者自己赋值 xff0c 会自动改变的变量 在普通的程序中 xff0c 编译器都具有优化功能 xff0c 为了避免浪
  • OpenStack 之 OVS介绍

    一 概述 Open vSwitch的官方定义 xff1a Open vSwitch是一个具有工业级质量的多层虚拟交换机 通过可编程扩展 xff0c 可以实现大规模网络的自动化 xff08 配置 管理 维护 xff09 它支持现有标准管理接口
  • OVN是OVS 5倍的性能--性能测试报告

    我们已经对OVN做了许多次的性能测试 xff0c 但是缺少一个OVN和 xff08 ML2 43 OVS xff09 的性能对比测试 我和许多人一起对比了这2种后端 本文是第一部分 xff1a 控制平面的性能对比 后面会另外发文公布数据平面
  • OpenStack 中的5种分配IPv6地址的方式

    在OpenStack Pike版本中创建IPv6子网时 xff0c 有五种设置地址方式供选择 上图中这五种方式显示不全 xff0c 现将其全部展示 No options specified xff08 Default xff09 xff0c
  • STM32 | TCP通信实例分析

    1024G 嵌入式资源大放送 xff01 包括但不限于C C 43 43 单片机 Linux等 关注微信公众号 嵌入式大杂烩 xff0c 回复1024 xff0c 即可免费获取 xff01 前言 关于socket的笔记 xff0c 之前已经
  • RT-Thread和Freertos的区别?

    关注 嵌入式大杂烩 xff0c 选择 星标公众号 一起进步 xff01 Freertos是一个国外推出的一个迷你的实时操作系统内核 xff0c 开源 xff0c 功能包括 xff1a 任务管理 时间管理 信号量 消息队列 内存管理 记录功能
  • C语言 | 函数指针作为函数的参数

    1024G 嵌入式资源大放送 xff01 包括但不限于C C 43 43 单片机 Linux等 关注微信公众号 嵌入式大杂烩 xff0c 回复1024 xff0c 即可免费获取 xff01 函数指针有两种常用的用法 xff0c 一种是作为结
  • 解析I2C通信协议

    一 I2C的概念 1 I2C总线是PHLIPS公司推出的一种串行总线 xff0c I2C总线只有两根双向信号线 其中一根是数据线SDA xff0c 另一根是时钟线SCL 2 每个接到I2C总线上的器件都有唯一的地址 发送数据到总线上的称为发
  • uCOS-II任务间通信之信号量 [转载]

    uCOS II任务间通信之信号量 信号量是什么 xff1f 信号量有什么用 xff1f 信号量是可以用来表示一个或多个事件的发生 xff0c 还可以用来对共享资源的访问 uCOS II提供了5个对信号量进行操作的函数 如下所示 xff1a
  • 关于STM32串口3的使用,接收并解析一帧数据

    关于STM32串口3的使用 xff0c 接收并解析一帧数据 当stm32的串口1被使用时 xff0c 我们可以使用其他串口来使用 步骤 xff1a 串口3定义 初始化 xff1b 串口3中断服务函数 接收的一帧数据并判断是否正确 xff1b
  • Windows Docker Desktop 无法启动报错 Docker Desktop is shutting down 的可能解决办法

    之前有一次 docker 启动到一半的时候电脑蓝屏了 xff0c 电脑重启之后 docker 就无法启动了 xff0c 一直报错 Docker Desktop is shutting down 网上查了一下 xff0c 发现一个可能的解决办
  • ESP8266的开发环境搭建、解决编译[Makefile:xxx: .subdirs] Error 2错误问题

    ESP8266的开发环境搭建 解决编译错误问题 ESP8266的开发环境搭建链接如下 ESP8266的开发环境搭建 在最后工程加载完毕后右击该工程 xff0c 在弹出的列表中选择 Build Project 编译工程 xff0c 如果在Co
  • 【数字图像处理】YUV420转RGB并BMP存储<纯C++实现>

    1 读取akiyo qcif yuv YUV420文件 xff0c 按帧读取 xff0c 转RGB xff0c 并存储到BMP文件 2 暂时实现读取一帧并存储一张BMP图片 若要读取YUV序列 xff0c 写成循环方式即可 3 生成的BMP
  • Unable to connect to the remote server 问题(已经解决)

    Unable to connect to the remote server 问题 xff08 已经解决 xff09 参考文章 xff1a xff08 1 xff09 Unable to connect to the remote serv
  • 【Android 源码学习】 init启动

    目录 Android 源码学习 init启动从main cpp开始init cpp 部分逻辑init启动zygote属性服务总结 Android 源码学习 init启动 Android 11 init 启动流程学习 主要是学习刘望舒腾讯课堂
  • Linux面试题 系统启动流程

    BIOS 基本输入输出系统 xff0c 帮助我们初始化硬件 硬盘分区有两类 xff1a MBR和GPT MBR单块硬盘不能大于2T xff0c 主分区的数量不能超过4个 xff1b MBR方案存储在第一个扇区的前446个字节 xff08 共
  • C语言中十进制转换十六进制(细解)

    十进制转换十六进制 span class token macro property span class token directive keyword include span span class token string lt std
  • 关于strtok的使用

    1功能 xff1a strtok是一个比较特殊的 xff0c 用于切割字符串的函数 2 使用我们先来看一下strtok的使用 strtok C 43 43 Reference char strtok xff08 char str xff0c
  • STL简介

    目录 一 STL是什么 二 STL怎么产生的 三 STL的六大组件 一 STL是什么 STL是c 43 43 标准库的重要组成部分 包含数据结构和算法的框架 比如 xff1a vector list sort STL Istream ost