上一页 1 2 3 4 5 6 7 ··· 12 下一页
数据元素:组成数据的基本单位 数据项:一个数据元素由多个数据项组成 数据对象:性质相同的数据元素的集合 数据类型:不同数据的集合 数据结构:数据对象中数据元素之间存在特定关系的集合。 数据之间的关系: 数据逻辑结构:集合结构,线性结构(一对一),树形结构(一对多),图形结构(多对多)。 数据物理存放 Read More
posted @ 2019-05-21 21:37 张不源 Views(235) Comments(0) Diggs(0) Edit
指针的判别: C++支持C语言的可变参数函数。 C++编译器的相同函数名时函数调用的优先级:1. 重载函数 2. 函数模板 3. 变参函数 指针判别思路:根据重载规则进行参数判别 构造函数抛出异常: 构造函数立即停止,对象无法生成,析构函数不会被调用,对象所占空间立即被收回。 在构造函数可能发生异常 Read More
posted @ 2019-05-15 19:40 张不源 Views(164) Comments(0) Diggs(0) Edit
静态类型:指针变量自身的类型 动态类型:指针所指向对象的类型 子类指针是否可以强制转换取决于对象的动态类型。 如何确定对象的动态类型:多态。 1. 在基类中实现返回类型的虚函数。 2. 所有派生类必须实现返回类型的虚函数。 3. 每个类型的虚函数的实现必须不同。 实现如下: C++中用关键字type Read More
posted @ 2019-05-15 16:13 张不源 Views(212) Comments(0) Diggs(0) Edit
C++内置了异常处理语法元素 try ,catch,throw。 try里面语句里产生异常( devide(1,0)产生除零异常),try里面函数devide用throw扔出异常值(对象,值),然后程序返回调用点,catch在调用点捕获到异常。 throw抛出的异常必须被catch处理。当前函数能够 Read More
posted @ 2019-05-14 19:44 张不源 Views(205) Comments(0) Diggs(0) Edit
异常:异常(Exception)是可预料的执行分支,bug是不可被预料的执行分支 异常:除以0,数组访问越界。 bug: 使用野指针,申请内存没有释放。 C语言异常处理方法: int setjump(jmp_buf env) :将上下文保存在jmp_buf结构体 void longjump(jmp_ Read More
posted @ 2019-05-14 18:11 张不源 Views(1261) Comments(0) Diggs(0) Edit
单例模式:类在系统生命周期中只有一个对象存在 思路:将构造函数设为私有。创建一个标记,用于指示对象的个数,多于一个返回已经创建了的对象,少于一个则创建一个。 单例类模板的实现: 进阶的单例类模板: #ifndef _SINGLETON_H_ #define _SINGLETON_H_ templat Read More
posted @ 2019-05-14 17:01 张不源 Views(346) Comments(0) Diggs(0) Edit
STL库的智能指针:auto_ptr 1. auto_ptr声明周期结束时,自动销毁指向的内存空间。(内存泄漏) 2. 不能指向堆数组,只能指向堆空间单个对象或变量。 3. 不能进行指针运算和指针比较。 4. 多个auto_ptr不能指向同一个堆空间。 STL库的智能指针:shared_ptr,we Read More
posted @ 2019-05-14 15:38 张不源 Views(294) Comments(0) Diggs(0) Edit
模板参数可以是字面量型参数(非类型参数), 字面量型参数限制:变量,浮点数(无法精确表示),类对象不能作为模板参数。(模板参数是在编译阶段是要被确定的) 数组模板类: 1 #ifndef _ARRAY_H_ 2 #define _ARRAY_H_ 3 4 template 5 < typename Read More
posted @ 2019-05-14 12:56 张不源 Views(262) Comments(0) Diggs(0) Edit
类模板:数据的组织方式和数据元素的类型无关。(也就是存储和组织元素)。 (链表类,队列类)。不关心操作的数据元素类型,只关心操作方法。 语法: 类模板定义具体对象:(必须显示的指定元素类型,编译器无法自动推导类型) 编译器对类模板的处理:编译器通过具体参数和类模板在定义对象时生成类的实体。 编译器会 Read More
posted @ 2019-05-13 20:19 张不源 Views(370) Comments(0) Diggs(0) Edit
泛型编程:不考虑具体数据类型的编程 函数模板:可用不同参数类型进行调用的函数(类型可以被参数化) 语法: 语法规则:template 关键字用于声明开始进行泛型编程(声明一个模板)。typaname 用于声明泛指类型。 调用规则:自动类型推导调用(根据函数调用时实参的类型设置T的类型)--> Swa Read More
posted @ 2019-05-13 19:23 张不源 Views(455) Comments(0) Diggs(0) Edit
上一页 1 2 3 4 5 6 7 ··· 12 下一页