C++学习:STL—1—基础概念

STL基础概念

STL: standard templatelibrary
即标准模板库,包含了一些为C++提供的基础模版,可以用来实现输入输出,数学计算等功能。已经普遍内置于编译器中,使用时无需自己安装。



前言

STL是一个基础模版的集合,集合了大量算法和数据结构的成果,合理的使用可以实现各种存储方法和相关算法的高度优化


一、模版是什么?

 基本的数据结构,如数组和链表等存在着存储和维护上的不便。如数组,需要提前规定数字的长度,即使申请动态内存也需要较多的操作。对于类来说,扩展类和派生类时,需要将所有相关类进行修改。而使用模版可以解决这类问题。
 通过模版可以创建通用类,将类型作为参数传递给模版,就可以创建实例。
 模版类的声明和定义通过关键字template实现。
template <class T>
class List
{
	public:
		List();
}

 使用模版的优点:

  1. 模版是C++内置的,类型安全。
  2. 能够参数化函数参数
  3. 当需要复制类,而导致复制大量代码时,可以使用模版来简化。

二、STL简介

1.构成

 STL由容器,算法,迭代器,函数对象,适配器,内存分配器组成。
  1. 容器:一些封装了数据结构的模版类
  2. 算法:一些模版函数
  3. 迭代器:实现对容器数据的操作
  4. 函数对象:重载为成员函数的运算符
  5. 适配器:调整类的接口,使得不同接口的类可以共同工作。
  6. 内存分配器:为容器提供内存分配和释放的功能。

2.头文件

SNL被划分为不同的头文件供用户调用。使用不同的算法和容器需要调用不同的头文件。

总结

 STL的掌握可以说C++程序员的必备技能。通过STL的使用,可以使对数据的处理更加灵活,可以节省考虑内存申请等细节所耗费的精力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CCC_bi

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

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

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

打赏作者

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

抵扣说明:

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

余额充值