4 c++编程-提高篇-STL简介
重新系统学习c++语言,并将学习过程中的知识在这里抄录、总结、沉淀。同时希望对刷到的朋友有所帮助,一起加油哦!
生命就像一朵花,要拼尽全力绽放!死磕自个儿,身心愉悦!
写在前面,本篇章主要简单介绍STL概念和引入,后续将分章节详细介绍。
1.1 STL的产生
- 合理有效提高代码的复用性,是软件开发人员的追求。
- c++的面向对象和泛型编程思想,目的就是提高代码的复用性。
- 为了建立数据结构和算法的一套标准,产生了STL。
1.2 STL基本概念
- STL(Standard Template Library 标准模版库)
- STL从广义上看包含:容器(container)算法(algorithm)迭代器(iterator)
- 容器和算法之间通过迭代器连接
- STL几乎所有的代码都采用了模版类或者模版函数。
1.3 STL六大组件
1.4 容器算法迭代器介绍
了解概念后,先来利用代码感受下STL的魅力。
STL中最常用的容器为vector,可以理解为数组,下面先看下如何向vector中插入数据、遍历数据。
1.4.1 vector存放内置数据类型
我们来实现一下vector存放内置数据类型,并遍历输出
容器: vector
算法:for_each
迭代器:vector<int>::iterator
示例:
1.4.2 vector存放自定义数据类型
实现一下vector存放自定义数据类型,并遍历输出
vetor内可存放自定义数据类型对象或对象指针。
示例:
1.4.3 vector容器嵌套容器
示例:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本