![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
Alcoholsong
这个作者很懒,什么都没留下…
展开
-
C++ 设计模式之状态模式的使用
状态模式(State Pattern)是设计模式的一种,属于行为模式。定义(源于Design Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类。 状态模式主要解决的是当控制一个对象状态的条件表达式过于复杂时的情况。把状态的判断逻辑转移到表示不同状态的一系列类中,可以把复杂的判断逻辑简化。意图允许一个对象在其内部状态改变时改变它的行为适用场景1.一个对象的行为原创 2015-04-19 17:29:06 · 427 阅读 · 0 评论 -
C++设计模式之抽象工厂模式
定义:抽象工厂模式提供了一种方法,把那些拥有公共主题的工厂组合起来,并且在使用时不需要考虑他们生产的是哪个具体类的对象。 AbstractFactory模式就是用来解决这类问题的:要创建一组相关或者相互依赖的对象。例如,在游戏开发中,你需要创建不同等级,不同的等级有不同的怪物出现,这样就涉及了产品等级结构与产品族。 先介绍一下产品等级结构与产品族的概念: 概述:该模式是工厂模式原创 2015-04-24 13:04:11 · 431 阅读 · 0 评论 -
防御式编程模式 - do while(0)模式的使用
转自: do - while(0)的妙用在C++中,有三种类型的循环语句:for, while, 和do…while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do…while相对不受重视。但是,最近在读我们项目的代码时,却发现了do…while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do…while(0)消除goto语句。通常,如果在转载 2015-04-24 23:35:41 · 357 阅读 · 0 评论 -
C++ 公有(public)继承,私有(private)继承,保护(protected)继承
公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。 1. 公有继承(public) 公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。 2. 私有继承(private) 私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这转载 2015-05-06 16:36:55 · 807 阅读 · 0 评论 -
C++ const 与 重载
重载函数的定义:出现在相同作用域中的两个函数,如果具有相同的名字而形参表不同,则称为重载函数。根据教材定义,如果有两个名字相同的函数,二者形参名字和类型都相同,但一个函数的形参带 const 修饰,而另一个函数不带 const 修饰,那么这两个函数应该也是重载函数。就像下面这两个版本://// 版本 1 //int increase(int &val){ return ++val;转载 2015-05-06 17:00:42 · 402 阅读 · 0 评论 -
C++ 实现strcmp
实现strcmp函数,不使用任何的字符串库#include <iostream>#include <cassert>#include <cstring>using namespace std;int _strcmp(const char* s1, const char* s2) { assert(s1 != NULL && s2 != NULL); while (*s1 !=原创 2015-05-06 17:28:26 · 2993 阅读 · 0 评论