摘要: 4. STL算法 5. 函数对象 阅读全文
posted @ 2020-05-11 10:50 ananasaa 阅读(102) 评论(0) 推荐(0) 编辑
摘要: 1.类模板的概念 1.1 函数模板的回顾 template <class T1, class T2> T1 add(T1 x, T2 y) { return x+y; } int main() { cout << add(9, ‘A’) << endl; //两种表达形式 cout << add<i 阅读全文
posted @ 2020-05-10 16:15 ananasaa 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2020-04-23 14:55 ananasaa 阅读(511) 评论(0) 推荐(0) 编辑
摘要: ①基类——不变 ②成员类——添加虚函数 ③长方形、椭圆形、三角形、甜甜圈——都不变 class CRectangle: public CShape { float len; float wid; public: CRectangle() { len = 300; wid = 200; color = 阅读全文
posted @ 2020-04-17 21:02 ananasaa 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 1. 从函数重载到运算符重载 1.1 多态性 ◼ 使用一致的接口(uniform interface)处理不同类型的数据 ◼例子:运算符重载(+) 3.14 + 0.0015 = 3.1415 [1, 2, 3] + [4, 5, 6] = [1, 2, 3, 4, 5, 6] [3+4i] + [ 阅读全文
posted @ 2020-04-17 13:02 ananasaa 阅读(224) 评论(0) 推荐(0) 编辑
摘要: 4.类型兼容 4.1 定义 在公有派生的情况下,一个派生类对象可作为基类的对象来使用 ◼ 派生类对象可以赋值给基类对象 ◼ 派生类对象可以初始化基类的引用 ◼ 派生类对象的地址可赋给指向基类的指针 5. 多继承类 5.1 定义 #include <iostream> using namespace 阅读全文
posted @ 2020-04-16 21:49 ananasaa 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 1. 继承与派生的定义与实现 1.1 定义 1.1.1 概念 ◼ 用已有类定义新类,新类拥有原有类的全部特征 ▪ 原有类→基类(父类) ▪ 新类→派生类 ◼ 可以多继承(一个派生类有多个基类)和多层派生(多层继承) 1.1.2 特点 新类可以继承原有类的属性和行为,并且可以添加新的属性和行为,或更新 阅读全文
posted @ 2020-04-16 09:35 ananasaa 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 4.静态成员 class CPoint2D { float x, y; const float num; //存在资源浪费现象,经常会重复 }; CPoint2D aaa,bbb; //有好多。。。 sizeof(aaa) == 12 ==sizeof(bbb); 4.1 定义 不同对象之间数据成员 阅读全文
posted @ 2020-04-15 11:27 ananasaa 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 3.复杂对象的使用与this指针 3.1 动态对象与对象指针 3.1.1 对象指针 ◼对象指针指向对象存放的地址 ◼ 定义与使用 类名 *对象指针名; 对象指针名->数据成员; 对象指针名->数据函数; ◼ 优点:地址传递,效率高 3.1.2 动态对象 CCircle *g_pc = NULL; / 阅读全文
posted @ 2020-04-14 14:59 ananasaa 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 2.3 拷贝构造函数 2.3.1 作用 把之前对象的数据赋值给新的对象 拷贝函数的(形参)是本类的对象的引用& 2.3.1 何时用? 2.4 浅拷贝和深拷贝 修改s里的内容,scopy也会随之改变,拷贝了跟没拷贝有啥区别。。 原因:两者指针指的地方是一样的,内存区域不变(s = sObj.s;) 两 阅读全文
posted @ 2020-04-14 06:52 ananasaa 阅读(177) 评论(0) 推荐(0) 编辑