笔记
e_Chubby
~~~~
展开
-
「C++程序设计笔记」第十章 泛型程序设计与C++标准模板库
第十章 泛型程序设计与C++标准模板库泛型程序设计及STL的结构泛型程序设计的基本概念编写不依赖于具体数据类型的程序将算法从特定的数据结构中抽象出来,成为通用的C++的模板为泛型程序设计奠定了关键的基础术语:概念用来界定具备一定功能的数据类型。例如:将“可以比大小的所有数据类型(有比较运算符)”这一概念记为Comparable将“具有公有的复制构造函数并可以用‘=’赋值的数据类型”这一概念记为Assignable将“可以比大小、具有公有的复制构造函数并可以用‘=’赋值的所有数据类型”原创 2020-09-13 21:00:15 · 225 阅读 · 0 评论 -
「C++程序设计笔记」第九章 模板与群体数据(二)
第九章 模板与群体数据栈栈类模板栈是只能从一端访问的线性群体, 是一种后进先出的数据结构;不同的程序对栈底和栈顶的策略有可能不同;栈的基本状态栈空, 栈满, 一般状态;(三种)栈的基本操作初始化入栈出栈清空栈访问栈顶元素检测栈的状态(满, 空)栈类模板实现示例//Stack.h#ifndef STACK_H#define STACK_H#include <cassert> template <class T, int SIZE = 50>cla原创 2020-09-13 20:59:07 · 167 阅读 · 0 评论 -
「C++程序设计笔记」第九章 模板与群体数据(一)
第九章 模板与群体数据模板函数模板声明template <模板参数表>函数定义示例template <class T> //定义函数模板void outputArray(const T *array, int count) { for (int i = 0; i < count; i++) cout << array[i] << " "; //如果数组元素是类的对象,需要该对象所属类重载了流插入运算符“<&原创 2020-09-13 20:57:56 · 382 阅读 · 1 评论 -
「C++程序设计笔记」第八章 多态性
第八章 多态性导学操作接口具有表现多种不同形态的能力,在不同环境对不同对象具有不同的处理方式;多态通过绑定实现,绑定就是将一个标识符名称与一段函数代码结合起来,比如函数表达式与函数体结合;分编译时绑定和运行时绑定;函数重载便是多态性,运算符重载也是;有部分运算符不能重载,比如三元运算符,::运算符和.运算符,且部分运算符不能重载为成员函数运算符重载的规则基本语法规则:只能重载已有的运算符;可以在类体里写函数重载,还可以在类外写全局函数重载;双目运算符重载为成员函数重载为类成员的运算原创 2020-09-13 20:56:54 · 143 阅读 · 0 评论 -
「C++程序设计笔记」第七章 继承与派生
第七章 继承与派生继承的基类和语法概述继承与派生是同一过程从不同的角度看保持已有类的特性而构造新类的过程称为继承在已有类的基础上新增自己的特性而产生新类的过程称为派生。被继承的已有类称为基类(或父类)派生出的新类称为派生类(或子类)直接参与派生出某类的基类称为直接基类基类的基类甚至更高层的基类称为间接基类目的继承的目的:实现设计与代码的重用。派生的目的:当新的问题出现,原有程序无法解决(或不能完全解决)时,需要对原有程序进行改造。单继承时派生类的定义语法class 派生类名:继原创 2020-09-13 20:55:38 · 265 阅读 · 0 评论 -
「C++程序设计笔记」第四章 类与对象
第四章 类与对象面向对象程序的基本特点抽象对同一类对象的共同属性和行为进行概括,形成类。首先注意问题的本质及描述,其次是实现过程或细节;数据抽象:描述某类对象的属性或状态(对象相互区别的物理量);代码抽象:描述某类对象的共有行为特征或具有的功能;抽象的实现:类;例如:钟表抽象:数据抽象:int hour,int minute, int second;代码抽象:setTimer(),showTime()class Clock{ public: void s原创 2020-08-18 01:36:52 · 281 阅读 · 0 评论 -
「C++程序设计笔记」第六章 数组,指针与字符串(二)
第六章 数组,指针与字符串(二)指针与数组指针访问数组元素pa=&a[0]; 或 pa=a;pa就是a[0],(pa+1)就是a[1],… ,*(pa+i)就是a[i].a[i], *(pa+i), *(a+i), pa[i]都是等效的。不能写a++,因为a是数组首地址、是常量。指针数组:数组元素是指针类型利用指针数组存放矩阵:#include using namespace std;int main() { int line1[] = { 1, 0, 0 };原创 2020-09-01 17:40:30 · 151 阅读 · 0 评论 -
「C++程序设计笔记」第六章 数组,指针与字符串(一)
第六章 数组,指针与字符串(一)数组的定义与初始化数组的定义与使用如:int a[10];int a[5][3];二维数组a[0] = a[5] + a[7];数组的存储与初始化元素间物理地址上的相邻,对应着逻辑次序上的相邻。数组名是数组首元素的内存地址。是常量;一维数组的初始化:列出全部元素的初始值 `static int a[10] = {0,1, 2, 3, 4, 5, 6, 7, 8, 9};`只给部分元素指定初始值 `static int a[10]原创 2020-08-28 18:12:07 · 480 阅读 · 0 评论 -
「C++程序设计笔记」第五章 数据的共享与保护
第五章 数据的共享与保护导学变量和对象定义在不同的位置其作用域、可见性、生存期都不同。标识符的作用域和可见性作用域分类函数原型作用域局部作用域(块作用域)类作用域文件作用域命名空间作用域函数原形作用域函数原型中的参数其总用域始于"(", 结束于")"函数原形作用域举例double area(double radius);局部作用域大括号内类作用域整个类体和类外实现的成员函数文件作用域不再上述作用域就在文件作用域中;也称为静态作用域;始于声明点,结束于原创 2020-08-24 15:12:25 · 233 阅读 · 0 评论