设计模式(C++)
文章平均质量分 81
yingmuliuchuan
这个作者很懒,什么都没留下…
展开
-
设计模式之Singleton模式
今天学习的设计模式是最基础,也是最常用的Singleton模式。该模式解决的问题也十分常见,就是我们需要惟一的创建一个实例的场景。在一些场景,我们普遍是用一个全局变量来实现控制,但是在需要纯粹的面向对象的范式中,我们必须要用标准的Singleton模式了,基本结构图如下:我们通过维护一个唯一的static变量来记录这个唯一的对象实例,通过提供一个static的接口instance()来原创 2018-01-31 18:30:24 · 165 阅读 · 0 评论 -
设计模式之Builder模式
今天学习的设计模式是类似于局部与整体的模式:builder模式。主要应用场景就是一个非常复杂的类,可以拆解为多个步骤来实现,那么就可以使用builder模式。基本结构图如下: 当我们要创建的对象很复杂的时候(通常是由很多其他的对象组合而成),我们要将复杂对象的创建过程和这个对象的表示(展示)分离开来,这样做的好处就是通过一步步的进行复杂对象的构建,由于在每一步的构造过程中可以原创 2018-02-01 16:51:58 · 177 阅读 · 0 评论 -
设计模式之bridge模式
面向对象的设计原则:高内聚、低耦合软件重构原则:小步快跑——抽取的思想(抽取函数、抽取类、抽取接口);对扩展开放、对修改封闭设计模式分类如下:Bridge模式主要是解决多维度问题,什么意思呢?类似于n*m这个公式,n种具体实现和m种具体的实现,最多可以有n*m种组合方式。下面这篇文章对Bridge模式讲解的通俗易懂,于是转了过来。生活中的一个例子: 就拿汽车在路上行驶的来说。转载 2018-02-01 18:01:53 · 191 阅读 · 0 评论 -
设计模式之Factory模式
今天开始学习设计模式,设计模式之于面向对象编程的作用就像算法之于面向过程的编程一般重要。首先从Factory模式开始。Factory模式:它们给一系列有联系的对象提供了创建的接口,而不用显式地明确类名。解决的问题有两类:1.为了提高内聚,松耦合,我们会抽象出一些类的公共接口以形成公共基类或接口。这样我们可以通过使用指向基类的指针来指向实际的子类实现,达到多态的目的。假如有n多的子类指向原创 2018-01-27 11:45:16 · 192 阅读 · 0 评论 -
UML中各种图形的关系和用法
关系后面的例子将针对某个具体目的来独立地展示各种关系。虽然语法无误,但这些例子可进一步精炼,在它们的有效范围内包括更多的语义。依赖(Dependency)实体之间一个“使用”关系暗示一个实体的规范发生变化后,可能影响依赖于它的其他实例(图D)。更具体地说,它可转换为对不在实例作用域内的一个类或对象的任何类型的引用。其中包括一个局部变量,对通过方法调用而获得的一个对象的引用(如下例所示),或者转载 2018-01-27 14:13:42 · 4368 阅读 · 1 评论 -
设计模式之AbstractFactory模式
前文降到Factory模式,只能解决同一类的对象创建的问题,现在有如下问题:假如我们需要开发一块游戏,设置不同的关卡,在不同的关卡需要有不同等级的boss。作为开发者我们就需要设计boss的类,然后初级boss,中级boss,高级boss,BT boss都由该类来派生。在每个关卡我们都需要创建类的实例,可以想象该游戏中我们将会创建成千上万的不同实例,还要保证创建的实例不会出错。Abstra原创 2018-01-29 18:36:32 · 731 阅读 · 0 评论 -
Learning C++之 1.4c 关键字和命名标识符
关键字:C++保留了84个关键字作为自己使用,这些保留字在C++中往往有特殊的意义。以下就是C++的关键字:alignas **alignof **andand_eqasmautobitandbitorbool *breakcasecatchcharchar16_t **char32_t **classcomplconstconstexpr **const_cast *continuedeclty...原创 2018-03-27 19:43:27 · 208 阅读 · 0 评论 -
Learning C++ 之 2.1 基本变量定义,初始化和赋值
内存地址:本课程实在1.3节材料的基础之上的。在之前课程的学习过程中,我们知道变量只是一段存储着基本信息的内存的命名而已。简单回顾一下,电脑中有随机存储器(RAM)供程序使用。当变量定义的时候,一段内存就会分配给该变量。内存中最小的单位是二进制的0或者1,你可以把二进制考虑成为一个灯的开关,开为1,关为0.没有中间状态。如果你观察一段随意的内存空间,你会发现类似于001010101010这样的数字...翻译 2018-05-21 15:25:27 · 492 阅读 · 0 评论