STL相关的概念

9 篇文章 0 订阅
2 篇文章 0 订阅

STL相关的概念
STL 是3个单词缩写 标准 模板 库,这个里面,是C++在编译器内部自带,一些库,这些主要是通用化数据结构+算法,咱们原来学队列、链表、数组…,你不用操心,这些它已经帮你做了非常好的,具备非常通用型,一个库。咱们只需要学会怎么用就可以了,这里封装非常复杂,特别是迭代器。
这里代码,基本都是函数模板和类模板实现的
C++面向对象语言3种特点(有些人也叫C++ 3要素)
封装
继承
多态:
多态体现在 函数重载、运算符重载、虚函数、模板(函数模板和类模板)

C++:
耦合:关联,联系
对于我们自己C语言模块化编程,也要做到,高内聚,低耦合
所以,同学模块编程,不要在模块定义全局变量

STL广义上分3大组件:容器、算法、迭代器
如果细分6大组件:容器、算法、迭代器、适配器、空间配置器、仿函数

STL所谓容器:说白就是一些通用化的数据结构,比方链表、队列、栈、set map…,这个专门放数据地方
STL算法:就是对数据的处理一个一些典型方法,例如排序、复制、查找…
迭代器:这个实现内部非常复杂,很多书把它叫做泛型指针

STL 六大组件的交互关系,容器通过空间配置器取得数据存储空间,算法通过迭代器存储容器中的内容,仿函数可以协助算法完成不同的策略的变化,适配器可以修
饰仿函数。

算法分为 : 质变算法和非质变算法。
质变算法:是指运算过程中会更改区间内的元素的内容。例如拷贝,替换,删除等

非质变算法:是指运算过程中不会更改区间内的元素内容,例如查找、计数、遍
历、寻找极值等等

线性表:数组,存储空间是连续,这种叫做线性存储
链表:链式存储

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

魔动山霸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值