C++学习笔记第十二篇

111.容器中存放的都必须是值而不能是引用,容器内部实施的是值拷贝工作,容器内可以存放指针作为数据元素,STL中的容器其实就是数据结构课程中学习的链表,栈,队列和哈希表等结构。

112.线性表的典型操作:

(1)size:获取当前容器中的元素数目。

(2)insert:在当前元素前插入新元素。

(3)erase:删除当前元素。

(4)empty:判断当前容器是否为空。

(5)front:获取第一个元素。

(6)back:获取最后一个元素。

……

113.栈和队列的典型操作:

(1)puah:无返回值,将元素压栈(队列)。

(2)pop:弹出栈(队列)第一个元素。

(3)top:返回栈的第一个元素。

(4)front:返回队列第一个元素。

……

114.STL提供了大多数常用的泛型算法。

(1)如:遍历,排序,反转,合并等等。

(2)算法头文件:<algorithm>。

115.C++中仍然支持C语言中的可变参数函数,C++编译器的匹配调用优先级:

(1)重载函数。

(2)函数模板。

(3)可变参数函数。

116.C++中的多态,根据实际的对象类型调用对应的虚函数。

(1)可以在基类中定义虚函数返回具体的类型信息。

(2)所有的派生类都必须实现类型相关的虚函数。

(3)每个类中的类型虚函数都需要不同的实现。

117.使用虚函数进行动态类型识别的缺陷:

(1)必须从基类开始提供类型虚函数。

(2)所有的派生类都必须重写类型虚函数。

(3)每个派生类的类型ID必须唯一。

利用虚函数进行动态类型识别的方法可以满足工程的需要,但是维护性会随着派生类的增多而呈指数级增加。

猜你喜欢

转载自blog.csdn.net/csdnjunlian/article/details/84891226