
optional库使用"容器"语义,包装了"可能产生无效值"的对象,实现了"未初始化"的概念。 "无意义"的值: 函数并不总能返回有效的返回值,...
### 1. 概述 观察者模式是一种被广泛应用的模式。Observer即观察者,当被观察对象的状态变化时,就会通知观察者做出相应的处理。 所谓观...
1. 概述 C++没有提供类似JAVA的垃圾回收机制,所以对象不会在不使用时自动销毁。尽管STL提供了 std::auto_ptr 智能指针,它...
1. 概述 随着业务复杂度的增加,系统程序中类的调用关系也会越来越复杂。这在日常工作中非常常见。如果放任不管,让大量的类散落在项目中,会对将来的...
1. 概述 通常当我们定义一个数据结构的时候,会觉得将对其进行处理的逻辑放在数据结构的类本身中是一件理所应当的事情,这也很符合 OOP 设计的思...
1. 概述 假设我们有一个蛋糕,如果我们给它加上了奶油,就变成了奶油蛋糕,如果给它加上了草莓,就成了草莓蛋糕,如果加上巧克力,就是巧克力蛋糕了。...
1. 概述 Composite 模式通常会被成为组合模式,而它同时也有另外一个名称,部分整体模式。虽然这个名称不那么高大上,但是却很直观的体现了...
1. 概述 所谓“策略”(strategy),即程序中的“算法”。策略模式(strategy pattern)可以整体的替换算法的实现部分,使得...
1. 概述 桥接模式(Bridge Pattern)是一种结构型设计模式。在理解桥接模式前,我们要先能够区分“类的功能层次结构”和“类的实现层次...