c++STL库
创始人
2024-01-31 17:06:50
0
什么是STL STL(standard template libaray-标准模板库):是C++标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。 STL的版本 原始版本 Alexander Stepanov、Meng Lee 在惠普实验室完成的原始版本,本着开源精神(开放源代码,Linux,git,mysql也是开源的)(与之相对的是闭源,iOS,Windows就是闭源,装Windows的费用被计算在了电脑的价格中),他们声明允许任何人任意运用、拷贝、修改、传播、商业使用这些代码,无需付费。唯一的条件就是也需要向原始版本一样做开源使用。 HP 版本--所有STL实现版本的始祖。 P. J. 版本 由P. J. Plauger开发,继承自HP版本,被Windows Visual C++采用,不能公开或修改,缺陷:可读性比较低,符号命名比较怪异。被微软的VS系列使用了,负责这个版本的维护和更新的就是微软工程师。 RW版本 由Rouge Wage公司开发,继承自HP版本,被C+ + Builder 采用,不能公开或修改,可读性一般。 SGI版本 由Silicon Graphics Computer Systems,Inc公司开发,继承自HP版本。被gcc和g++(Linux)采用,可移植性好,可公开、修改甚至贩卖,从命名风格和编程 风格上看,阅读性非常高。我们后面学习STL要阅读部分源代码,主要参考的就是这个版本。 以后可能看到一段代码,在Windows下会崩溃,在Linux下可能不会崩溃。因为是不同版本,Windows是pj版由微软维护;Linux是SGI版本,由开源社区维护。在后面的文章中展现的STL源码是SGI版本 STL的六大组件: 其实只是对STL中的内容进行分类。 仿函数:现在没法描述 算法:对数据处理的方式。比如排序,查找 迭代器:现在没法描述 空间配置器:现在没法描述 容器:就是数据结构 配接器:现在没法描述 STL的学习一般分三层:1.学习使用;2.了解源代码框架,模拟实现;3.扩充STL,就是添加STL中没有的内容

相关内容

热门资讯

【理响中国】更加清醒坚定地推进...   腐败是党和国家事业发展进程中的拦路虎、绊脚石,反腐败是一场输不起也决不能输的重大斗争。在二十届中...
“春风行动”让家门直通厂门、五...   央视网消息:眼下正是宁夏的冬闲时节,而春节前后则是沿海地区用工缺口的高峰期。16日,宁夏“202...
“十五五”开好局起好步|从“会...   央视网消息:从写入“十五五”规划建议到走进现实的智能载体,“具身智能”的发展速度超出想象,而人形...
焦点访谈|海南自贸港全岛封关“...   央视网消息(焦点访谈):2025年12月18日,海南自由贸易港正式启动全岛封关,标志着3万多平方...
晶采观察丨八部门发文!银发福利...   赶紧转给爸妈,2026年养老消费有了更多新选择。近日,民政部等八部门联合印发《关于培育养老服务经...
视频丨为夺格陵兰岛 美再挥关税...   17日,丹麦本土和格陵兰岛多地分别举行游行示威,抗议美国近期持续发表觊觎格陵兰岛的言论。然而就在...
哥伦比亚发生武装冲突 已致20...   当地时间16日,哥伦比亚中南部的瓜维亚雷省埃尔雷东托市农村地区发生一起严重武装冲突,造成至少20...
AI生成图片竟成人像摄影指南 ...   AI写诗、作画已经不新鲜了,但如果您买了一本教人摄影的专业书籍,回家却发现书里的模特长着六根手指...
欧盟-南共市自贸协定正式签署 ...   当地时间1月17日,欧盟-南方共同市场(南共市)自由贸易协定在巴拉圭首都亚松森正式签署。阿根廷总...
两部门安排部署重点省份做好低温...   针对1月17日至21日明显雨雪过程,1月17日,国家防灾减灾救灾委员会办公室、应急管理部组织中国...