C++---了解STL
上节学习了模板,那么就得谈到C++的标准模板库STL。
C++98:以模板方式重写了C++标准库,引入了STL(标准模板库)。
1.概念
STL(Standard template Libarary)标准模板库:是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是保罗数据结构和算法的软件框架。

2.版本
原始版本
Alexander Stepanov、Meng Lee 在惠普实验室(HP)完成的原始版本,本着开源精神,他们声明允许任何人任意运用、拷贝、修改、传播、商业使用这些代码,无需付费。唯一的条件就是也需要向原始版本一样做开源使用。HP版本--所有STL实现版本的始祖。
P.J.版本
由P. J. Plauger开发,继承自HP版本,被Windows Visual C++采用,不能公开或修改,缺陷:可读性比较低,符号命名比较怪异。
RW版本
由Rouge Wage公司开发,继承自HP版本,被C+ + Builder 采用,不能公开或修改,可读性一般。
SGI版本
由Silicon Graphics Computer Systems,Inc公司开发,继承自HP版 本。被GCC(Linux)采用,可移植性好,可公开、修改甚至贩卖,从命名风格和编程 风格上看,阅读性非常高。后面学习STL要阅读部分源代码,主要参考的就是这个版本。
STL提供的容器和算法是规定死的,虽然有不同的版本,但是功能一致且内部框架类似。
类似于汽车的不同品牌。
3.六大组件

4.学习方法
使用、理解、扩展。
能够熟练运用STL标准模板库,理解STL的底层逻辑并且能够去模拟实现;
在使用与理解的基础上,对于一些没有在库中的数据结构进行扩展。
5.缺陷
②STL现在都没有支持线程安全。并发环境下需要我们自己加锁。且锁的粒度是比较大的。
③STL极度的追求效率,导致内部比较复杂。比如类型萃取,迭代器萃取。
④STL的使用会有代码膨胀的问题,比如使用vector/vector/vector这样会生成多份代码,当然这是模板语法本身导致的。
相关文章:
C++---了解STL
上节学习了模板,那么就得谈到C的标准模板库STL。 C98:以模板方式重写了C标准库,引入了STL(标准模板库)。 1.概念 STL(Standard template Libarary)标准模板库:是C标准库的重要组成部分,不仅是一个可复用的组件库&am…...
智能自动化新纪元:AI与UiPath RPA的协同应用场景与技术实践
智能自动化新纪元:AI与UiPath RPA的协同应用场景与技术实践 引言 在数字化转型的浪潮中,企业对于自动化技术的需求已从简单的任务执行转向更复杂的智能决策。传统RPA(Robotic Process Automation)通过模拟人类操作处理重复性任务…...
2025年2月科技热点深度解析:AI竞赛、量子突破与开源革命
引言 2025年的科技领域持续呈现爆发式增长,AI大模型竞争白热化、量子计算商业化加速、开源工具生态繁荣成为本月最受关注的议题。本文结合最新行业动态,从技术突破、商业布局到开发者生态,全面解析当前科技热点,为读者提供深度洞…...
计算机网络————(三)
前文二 前文一 Websocket协议 是一种存在TCP协议之上的协议 当客户端需要了解服务器是否更新就需要不断给客户端发送请求询问是否更新,这行会造成服务端压力很大 而Websocket相当于服务器一旦更新了就会给客户端发送消息表明自己更新了,类似客户端订阅…...
请谈谈 React 中的状态管理,如何使用 Context API 和 Redux 进行状态管理?
一、Context API 深度应用 1. 核心实现原理 通过createContext创建上下文对象,使用Provider组件包裹需要共享状态的组件树,子组件通过useContext Hook或Consumer组件消费数据。 代码示例(主题切换场景): // 创建上…...
【考研】复试相关上机题目
文章目录 22机试回忆版1、判断燃气费描述输入格式输出格式输入样例输出样例 C o d e Code Code 2、统计闰年数量描述输入格式输出格式输入样例输出样例 C o d e Code Code 3、打印图形描述输入格式输出格式 C o d e Code Code 4、密文数据描述输入格式输出格式输入样例输出样例…...
利用机器学习实现实时交易欺诈检测
以下是一个基于Python的银行反欺诈AI应用示例代码,演示如何利用机器学习实现实时交易欺诈检测。该示例使用LightGBM算法训练模型,并通过Flask框架构建实时检测API: python import pandas as pd from sklearn.model_selection import train_test_split from sklearn.preproc…...
Modelfile配置说明
参数说明翻译 参数描述值类型示例用法mirostat启用Mirostat采样以控制困惑度。(默认:0,0禁用,1Mirostat,2Mirostat 2.0)intmirostat 0mirostat_eta影响算法对生成文本反馈的响应速度。较低的学习率将导致调…...
labview实现有符号位16进制转二进制补码转真值
今天在用一个采集模块时,发现读出寄存器的数据是不同的,它有两种范围,一个时十六进制整型,一种是有符号位十六进制,对应的量程和范围也是不同的,针对之前读取温度没有出现负数的情况,应该是转成…...
浏览器深度解析:打造极速、安全、个性化的上网新体验
在数字化时代,浏览器作为我们获取信息、娱乐休闲的重要工具,其性能与功能直接影响着我们的上网体验。今天,我将为大家介绍一款备受好评的浏览器——Yandex浏览器,并深入解析其独特功能与优势,帮助大家更好地了解并选择这款上网神器。 一、知名公司背书,开源项目融合 Yan…...
JavaScript 简单类型与复杂类型-堆和栈
深入理解JavaScript中的简单类型(基本数据类型)与复杂类型(引用数据类型)如何在内存中存储对于编写高效、无误的代码至关重要。本文将探讨这两种类型的差异,以及它们在内存中的存储机制——栈(Stack&#x…...
【AI+智造】DeepSeek价值重构:当采购与物控遇上数字化转型的化学反应
作者:Odoo技术开发/资深信息化负责人 日期:2025年2月24日 引言:从事企业信息化工作16年,我见证过无数企业从手工台账到ERP系统的跨越。但真正让采购和物控部门脱胎换骨的,是融合了Deepseek AI的Odoo数字化解决方案——…...
基于YOLO11深度学习的苹果叶片病害检测识别系统【python源码+Pyqt5界面+数据集+训练代码】
《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...
mapbox添加自定义图片绑定点击事件,弹窗为自定义组件
一、首先构建根据后端返回的数据构建geojson格式的数据,点位的geojson数据格式: {"type": "FeatureCollection","features": [{"type": "Feature","geometry": {"type": "…...
SVT-AV1接入ffmpeg说明
一 编译集成 Files v2.3.0 Alliance for Open Media / SVT-AV1 GitLab cd /SVT-AV1/Build/linux/ ./build.sh make install GitHub - FFmpeg/FFmpeg: Mirror of https://git.ffmpeg.org/ffmpeg.git ./configure --enable-libsvtav1 --enable-gpl --extra-ldflags-L/usr/loca…...
基于 C++ Qt 的 Fluent Design 组件库 QFluentWidgets
简介 QFluentWidgets 是一个基于 Qt 的 Fluent Designer 组件库,内置超过 150 个开箱即用的 Fluent Designer 组件,支持亮暗主题无缝切换和自定义主题色。 编译示例 以 Qt5 为例(Qt6 也支持),将 libQFluentWidgets.d…...
OpenCV(6):图像边缘检测
图像边缘检测是计算机视觉和图像处理中的一项基本任务,它用于识别图像中亮度变化明显的区域,这些区域通常对应于物体的边界。是 OpenCV 中常用的边缘检测函数及其说明: 函数算法说明适用场景cv2.Canny()Canny 边缘检测多阶段算法,检测效果较…...
多模态人物视频驱动技术回顾与业务应用
一种新的商品表现形态,内容几乎存在于手淘用户动线全流程,例如信息流种草内容、搜索消费决策内容、详情页种草内容等。通过低成本、高时效的AIGC内容生成能力,能够从供给端缓解内容生产成本高的问题,通过源源不断的低成本供给倒推…...
星海智算+ DeepSeek-R1:技术突破与行业应用的协同革新
一、前言 在当今数字化时代,人工智能(AI)正以前所未有的速度改变着商业和社会的方方面面。最近爆火的DeepSeek-R1系列模型,以其强大的推理能力和在中文的推理、代码和数学任务高效的性能得到了全球用户的热议。该模型不仅在多项专…...
选择排序:简单高效的选择
大家好,今天我们来聊聊选择排序(Selection Sort)算法。这是一个非常简单的排序算法,适合用来学习排序的基本思路和操作。选择排序在许多排序算法中以其直观和易于实现的特点著称,虽然它的效率不如其他高效算法…...
3步掌握飞书文档转换:Cloud Document Converter零基础上手指南
3步掌握飞书文档转换:Cloud Document Converter零基础上手指南 【免费下载链接】cloud-document-converter Convert Lark Doc to Markdown 项目地址: https://gitcode.com/gh_mirrors/cl/cloud-document-converter Cloud Document Converter是一款专为飞书用…...
告别‘有去无回’:在UniApp H5中优雅集成iframe页面的导航兼容方案
深度解构UniApp H5中iframe导航难题:从原理到架构级解决方案 当我们在UniApp H5应用中集成第三方服务时,iframe似乎是个简单直接的方案——直到用户按下返回键的那一刻。想象这样的场景:用户在你的电商应用中打开客服聊天窗口,咨询…...
实时AIAgent平衡失控诊断手册:5分钟定位Exploration Collapse,含Prometheus监控指标+Grafana看板模板
第一章:实时AIAgent平衡失控诊断手册:5分钟定位Exploration Collapse,含Prometheus监控指标Grafana看板模板 2026奇点智能技术大会(https://ml-summit.org) Exploration Collapse 是实时 AI Agent 系统中最隐蔽的失衡现象之一:A…...
从MOT17到VTMOT:手把手教你用PFTrack评估双模态跟踪模型(附结果解读)
从MOT17到VTMOT:深度解析双模态跟踪模型的评估艺术 当你在VTMOT数据集上运行完PFTrack模型,看着终端输出的三张评估表格(HOTA、CLEAR、Identity)时,是否曾困惑于这些数字背后的真实含义?本文将带你穿透指标…...
HY-MT1.5翻译模型快速入门:基于星图镜像的部署与测试
HY-MT1.5翻译模型快速入门:基于星图镜像的部署与测试 1. 模型概述 1.1 模型架构与特点 HY-MT1.5是腾讯开源的双版本翻译模型系列,包含两个不同规模的模型: HY-MT1.5-1.8B:轻量级模型,18亿参数,适合边缘…...
百川2-13B模型在AIGC内容创作中的惊艳效果案例
百川2-13B模型在AIGC内容创作中的惊艳效果案例 最近我花了不少时间,把玩了一下百川智能的Baichuan2-13B模型。说实话,一开始我并没有抱太高的期望,毕竟现在大模型遍地开花,同质化也挺严重的。但当我真正用它来尝试各种AIGC内容创…...
RTX 3060就能跑!Chandra OCR从安装到批量处理,完整教程来了
RTX 3060就能跑!Chandra OCR从安装到批量处理,完整教程来了 1. 为什么选择Chandra OCR 在日常工作中,我们经常遇到需要将纸质文档、扫描件或PDF转换为可编辑电子格式的需求。传统OCR工具往往存在以下痛点: 只能识别文字&#x…...
SiameseAOE模型在微信小程序评论分析中的应用实战
SiameseAOE模型在微信小程序评论分析中的应用实战 最近和几个做小程序的朋友聊天,他们都在头疼同一个问题:用户评论越来越多,根本看不过来。好评差评混在一起,想提炼点有价值的信息,比如用户到底喜欢商品的哪个点&…...
别再让RAG乱给答案了!手把手教你用Cohere Rerank给LangChain检索结果‘排座次’
用Cohere Rerank重构LangChain检索逻辑:从混沌到精准的实战指南 当你发现自己的RAG系统开始像醉酒的水手一样胡言乱语时,是时候给那些混乱的检索结果"排座次"了。作为一名长期与LangChain打交道的开发者,我经历过无数次检索结果相关…...
2026年MySQL安装教程(超详细)
MYSQL下载及配置,一遍成功引言第一部分:下载教程第二部分:安装与配置第三部分:验证引言 大家好,我是菜程序,今天聊聊mysql的下载及配置,后端开发一定离不开数据库的支持,所以我便整…...
