大家好
欢迎继续学习C++语言程序设计
这一章我们将为大家
简单地介绍C++的模板机制
而且呢
还要为大家介绍
几个简单的容器类模板
用来容纳群体数据
那么对于数据的处理呢
最常见的就是
对数据进行查找和排序了
这一章我们给大家介绍
几个简单的查找排序的算法
实际上呢
同学们看到这章的标题
可能就有疑问了
群体数据指的是什么呢
是啊
在这一章里
我们说的群体数据
是一组相同类型的元素
组成的数据
特别地
如果它们是按一定次序排列的
我们把它称之为线性群体
我们在之前学过的数组
就可以用来存储
和处理线性群体
但是大家可能还会有些疑问
就是数组
如果我们在运行的过程中
希望它的大小可以改变
是不可以支持的 对吧
还有
我们经常会遇到
下标越界这样的问题
那后来我们又学了动态数组
也就是用动态内存分配的方式
来管理数组的空间
可是大家又会觉得
它还有些麻烦
那么我们在这一章里
有没有什么好办法呢
是啊
在第六章我们就看到过一个
封装起来的动态数组类了
只不过呢那个类
只内适用于存放点类的数组
那我们在程序中
要用到的数据类型有很多呀
总不能我们为了每一种类型
都去封装一个数组
这个成本太高了吧
而且呢
当我们要对数据进行处理的时候
比如说
像最常见的查找 排序
我们要写函数 写算法去实现
那么同样的算法逻辑
当它要
适用于不同的数据类型的时候
其实我们也需要
写不同的函数
重载的形式
其实这也是挺麻烦的一件事
那么C++有没有为我们提供
一种比较方便
比较好的机制呢
有啊
那就是模板
分为函数模板和类模板
在C++中
模板允许我们将处理问题的逻辑
从不同的数据类型中抽离出来
形成容器和算法
是啊
当我们需要对某种数据
进行存储和处理的时候
我们可以在程序中
选择合适的模板
然后指定我们需要的数据类型
这个时候
编译器就会为我们生成
适合这种数据类型的数据容器
以及算法函数
听起来很奇妙呀
其实用起来很简单
这一章呢
我将为大家讲解基本概念
基本语法
以及验证性的例题
由李超老师呢
给大家带来一个
有趣的综合实例
以及实验指导
在综合实例中
大家还记得那个帐号管理系统吗
在那个系统中
如果用户
想动态地为自己添加一个新帐户
之前是不允许的
那么在这一章里
我们将会使用
新学到的array这个好办法
来让用户实现这个新功能
是啊
听了我们的介绍
我相信大家
已经迫不及待地想开始学习了吧
希望大家有兴趣跟我们一起
来探索模板
和群体数据存储与处理的奥秘
而且呢
这一章是泛型程序设计的基础
我们打好基础以后
下一章
我们来介绍泛型程序设计
和STL模板库
那里面有更多有趣的好东西
和之前的章节一样
希望大家除了在学习
郑老师给大家介绍的概念
和方法之后呢
还要多多地去多动手练习