当我们越来越多的使用C++的特性, 将越来越多的问题和事物抽象成对象时, 我们不难发现:很多对象都具有共性。 比如 数值可以增加、减少;字符串也可以增加减少。 它们的动作是相似的, 只是对象的类型不同而已。 C++ 提供了“模板”这一特性, 可以将“类型” 参数化, 使得编写的代码更具 ...
,学习目标 .理解类模板的概念 .掌握类模板的定义 实例化过程,会运用类模板 .掌握栈类模板 链表类模板的使用 .理解STL编程的基本思想 .掌握STL容器的使用 .熟练使用STL算法 .理解STL函数对象 类模板 模板是C 语言的重要特征,它能够显著提高编程效率。利用C 的函数模板和类模板,能够快速建立具有类型安全的类库集合和函数集合,进行大规模软件开发,并提高软件的通用性和灵活性。C 的 标 ...
2012-06-18 16:15 0 7837 推荐指数:
当我们越来越多的使用C++的特性, 将越来越多的问题和事物抽象成对象时, 我们不难发现:很多对象都具有共性。 比如 数值可以增加、减少;字符串也可以增加减少。 它们的动作是相似的, 只是对象的类型不同而已。 C++ 提供了“模板”这一特性, 可以将“类型” 参数化, 使得编写的代码更具 ...
为什么把set与map放在一起呢,因为里面有很多一样的特性与结构; 一,set集合 原理: set里面的数据存放,不是数组模式,也不是指针链表模式,而是二叉树模式,和map也是二叉树模式,所 ...
一,vector 名字:向量,本质:数组,存在意义:解决动态数组问题,我们知道c++的数组定义,一定要确定具体的大小,因为这个涉及到内存的分配,确定小了,又不够用,太大又浪费,所以推出了动态的确定素组的大小, 原理:先分配一个N大小的数组,然后对该向量进行操作,如果不断插入,而空间 ...
STL源码初步接触 STL = Standard Template Library,直译过来是:标准模板库,是惠普实验室开发的一系列软件的统称。从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器 ...
可以像定义函数模板一样去定义类模板。定义形式为: template <模板形参表> class 类模板名{ 成员列表 }; <模板形参表>的格式一般为:<class 类型参数1,clsss 类型参数2,...> 利用类 ...
上篇文章介绍了模版函数,本篇文章介绍下模版类。 C++类模版为生成通用的类声明提供了一种更好的方法。模版提供参数化类型,即能通过类型名作为参数传递给接收方来简历类或函数,例如将类型名int传递给Queue模版,可以让那个模版构造一个对int进行排队的Queue类。 1.定义类模版 ...
一、类模板 1、作用 建立一个通用类,类中的成员 数据类型可以不具体制定,用一个虚拟的类型来代表。 2、语法 template --- 声明创建模板 typename --- 表面其后面的符号是一种数据类型,可以用class代替 T --- 通用的数据类型,名称 ...
一、函数模板 #include<iostream> #include<string> using namespace std; template<class T> T min(T a[],int n) { int i; T ...