240 发简信
IP属地:浙江
  • Boost optional 详解

    optional库使用"容器"语义,包装了"可能产生无效值"的对象,实现了"未初始化"的概念。 "无意义"的值: 函数并不总能返回有效的返回值,...

  • Resize,w 360,h 240
    观察者模式 -- 发送状态变化通知

    ### 1. 概述 观察者模式是一种被广泛应用的模式。Observer即观察者,当被观察对象的状态变化时,就会通知观察者做出相应的处理。 所谓观...

  • Boost 智能指针

    1. 概述 C++没有提供类似JAVA的垃圾回收机制,所以对象不会在不使用时自动销毁。尽管STL提供了 std::auto_ptr 智能指针,它...

  • Resize,w 360,h 240
    门面模式 -- 简单窗口

    1. 概述 随着业务复杂度的增加,系统程序中类的调用关系也会越来越复杂。这在日常工作中非常常见。如果放任不管,让大量的类散落在项目中,会对将来的...

  • Resize,w 360,h 240
    访问者模式 -- 分离数据结构与处理数据

    1. 概述 通常当我们定义一个数据结构的时候,会觉得将对其进行处理的逻辑放在数据结构的类本身中是一件理所应当的事情,这也很符合 OOP 设计的思...

  • 装饰器模式 -- 装饰与被装饰物的一致性

    1. 概述 假设我们有一个蛋糕,如果我们给它加上了奶油,就变成了奶油蛋糕,如果给它加上了草莓,就成了草莓蛋糕,如果加上巧克力,就是巧克力蛋糕了。...

  • 组合模式 -- 容器与内容的一致性

    1. 概述 Composite 模式通常会被成为组合模式,而它同时也有另外一个名称,部分整体模式。虽然这个名称不那么高大上,但是却很直观的体现了...

  • Resize,w 360,h 240
    策略模式 -- 整体的替换算法

    1. 概述 所谓“策略”(strategy),即程序中的“算法”。策略模式(strategy pattern)可以整体的替换算法的实现部分,使得...

  • Resize,w 360,h 240
    桥接模式 -- 分离功能层次结构和实现层次结构

    1. 概述 桥接模式(Bridge Pattern)是一种结构型设计模式。在理解桥接模式前,我们要先能够区分“类的功能层次结构”和“类的实现层次...