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

引用著名学者侯捷所言:

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

本章完。

相关推荐
Roy_Sashulin2 分钟前
基于AI的Java编程平台
java·开发语言·人工智能·sashulin·deepseek
周万宁.FoBJ6 分钟前
vue源码讲解之 reactive解析(仅proxy部分)
开发语言·javascript·ecmascript
旖-旎7 分钟前
二分查找(山脉数组的峰顶索引)(5)
c++·算法·leetcode·二分查找·力扣·双指针
阿贵---10 分钟前
单元测试在C++项目中的实践
开发语言·c++·算法
2401_8914821716 分钟前
C++中的事件驱动编程
开发语言·c++·算法
sw12138920 分钟前
C++与Rust交互编程
开发语言·c++·算法
2401_8579182924 分钟前
模板编译期机器学习
开发语言·c++·算法
weixin_4041576825 分钟前
Java高级面试与工程实践问题集(一)
java·开发语言·面试
清风徐来QCQ27 分钟前
Java2(valueOf,Character,StringBuilder,设计模式)
java·开发语言
2403_8355684729 分钟前
多平台UI框架C++开发
开发语言·c++·算法