C++ STL简介:从原理到入门使用指南

STL简介

概念

STL(standard template libaray - 标准模板库):是C++标准库的重要组成部分 ,不仅是一个可复用组件库,而且是一个包罗数据结构与算法的软件框架

更迭

1.原始版本

AlexanderStepanov、MengLee 在惠普实验室完成的原始版本,本着开源精神,他们声明允许任何人任意运用、拷贝、修改、传播、商业使用这些代码,无需付费。唯一的条件就是也需要向原

始版本一样做开源使用。HP版本--所有STL实现版本的始祖。

2.P.J.版本

由P.J.Plauger开发,继承自HP版本,被WindowsVisualC++采用,不能公开或修改,缺陷:可读

性比较低,符号命名比较怪异。

3.RW版本

由Rouge Wage公司开发,继承自HP版本,被C++Builder采用,不能公开或修改,可读性一般。

4.SGI版本

由Silicon Graphics Computer Systems,Inc公司开发,继承自HP版本。被GCC(Linux)采用,可

移植性好,可公开、修改甚至贩卖,从命名风格和编程风格上看,阅读性非常高。

STL的六大组件

如何学习STL

引用著名学者侯捷所言:

总结为:能用,明理,能扩展。

本章完。

相关推荐
黎雁·泠崖1 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_763472462 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
阿猿收手吧!2 小时前
【C++】std::promise原理与实战解析
c++
TechWJ2 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
lly2024063 小时前
C++ 文件和流
开发语言
m0_706653233 小时前
分布式系统安全通信
开发语言·c++·算法
Zach_yuan3 小时前
深入浅出 JSONCpp
linux·服务器·网络·c++
寻寻觅觅☆3 小时前
东华OJ-基础题-104-A == B ?(C++)
开发语言·c++
lightqjx3 小时前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列
zh_xuan4 小时前
kotlin lazy委托异常时执行流程
开发语言·kotlin