随笔分类 -  C++ 总结记录

学习记录
摘要:功能:显示+计算 过程:在前者的基础上添加计算的代码 特点:由于已经精确地建模过,所以几乎不用改动原有的代码,可以直接添加新的部分 代码: 1 #include <iostream> 2 using namespace std; 3 4 class Expr_node; 5 6 // 句柄类 7 c 阅读全文
posted @ 2021-09-04 22:46 孱陵 阅读(41) 评论(0) 推荐(0)
摘要:功能:打印表达式 技术:句柄、继承 代码 1 #include <iostream> 2 using namespace std; 3 4 class Expr_node; 5 6 // 句柄类 7 class Expr 8 { 9 friend ostream& operator<< (ostre 阅读全文
posted @ 2021-09-04 21:55 孱陵 阅读(77) 评论(0) 推荐(0)
摘要:——将句柄与使用者信息分离,以类的形式存在 1. 计数类:控制计数的类,被嵌入句柄来使用,实现功能分离 2. 实现代码 1 #include <iostream> 2 using namespace std; 3 4 // 计数部分 5 class UseCount 6 { 7 private: 8 阅读全文
posted @ 2021-09-04 09:28 孱陵 阅读(36) 评论(0) 推荐(0)
摘要:值语义、指针语义的概念: 1. 发生在两个指针变量的相互赋值期间。 2. 若一个指针只获取另一个指针的地址,则为指针语义 3. 若一个指针获取另一个指针指向的对象的拷贝的地址,则为值语义 写时复制( copy on write ): 1. 。。。以后解释 阅读全文
posted @ 2021-09-03 23:15 孱陵 阅读(71) 评论(0) 推荐(0)
摘要:提出问题:代理(见其它文章)提供了一个容器容纳对象时保持多态性的办法,但是它采用复制得到副本的方式,在复制对象开销巨大时或不可能时,需要考虑其它的方法。 解决方案:handle类(句柄类,又叫“ 智能指针 ”) 特性: 1. 具备代理的多态性 2. 只指向、不复制对象 3. 无句柄指向对象时释放对象 阅读全文
posted @ 2021-09-03 22:33 孱陵 阅读(49) 评论(0) 推荐(0)
摘要:问题提出:由于C++具备继承的特性,若想使用一个容器(如数组)存储一系列的父类、子类对象,应该如何操作? 实现难点: 1. 基类数组:不能实现 2. 基类指针数组(间接层):对管理内存不友好 实在的解决方案:代理类 1. 代理是对对象的拷贝,具备对象的一切操作,并且可以实现容器中装入父类、子类各种对 阅读全文
posted @ 2021-09-03 20:13 孱陵 阅读(116) 评论(0) 推荐(0)