
生活
文章平均质量分 64
u010231493
这个作者很懒,什么都没留下…
展开
-
设计模式观后(c++还原之十二 命令模式)
以前在github给自己写日记习惯了,笔记原创 2014-09-17 22:29:14 · 412 阅读 · 0 评论 -
设计模式观后(c++还原之十五 策略模式)
using std::map;using std::endl;using std::cout;using std::list;using std::vector;using std::string;//策略模式//这个模式,感觉没啥东西。就是自由切换和避免多重判断//抽象策略角色class Strategy {public: virtual void DoSomething原创 2014-09-21 23:11:52 · 494 阅读 · 0 评论 -
设计模式观后(c++还原之七 模板方法模式)
//模板方法模式。完全是注意一点:软件开发过程中,如果相同的一段代码复制俩次,//就需要对设计产生怀疑//作者也是用了虚函数的覆盖功能。class HummerModel {protected: virtual void start() {} virtual void stop() {} virtual void alarm() {} virtual voi原创 2014-09-10 23:17:46 · 500 阅读 · 0 评论 -
设计模式观后(c++还原之十八 组合模式)
//组合模式//作者这个模式举得例子很有趣:树、根、叶;//用上面的思想要把员工管理组合在一起。//经理添加员工,获取信息。组长添加员工,获取信息等,树结构。//抽象员工接口、(根节点)class ICorp {public: virtual string GetInfo() = 0; virtual int GetType() {return 0;}//获取职位类型0:树叶 1:原创 2014-09-25 21:33:34 · 490 阅读 · 0 评论 -
设计模式观后(c++还原之十九 观察者模式)
//观察者模式//作者示例:李斯派人观察监视韩非子,并报告给秦始皇。//我自己修改了一些//抽象观察者class Observer {public: virtual void Update(string& context){}};//被观察者接口class Observable {public: //增加一个观察者 virtual void AddObserver(Obse原创 2014-09-27 21:06:45 · 494 阅读 · 0 评论 -
设计模式观后(c++还原之十七 迭代器模式)
//迭代器模式//现在已经基本感觉没意思了,感觉每个23钟模式围绕着前面的6个原则设计//只是增加了示例见识,还不见得全记得住。//估计要用的时候才会迅速找到//不说了,要加速23钟模式;快点进入模式混合搭配,才能深刻理解//作者把管理项目信息做了一个迭代器//先抽象基类class ProjectIterator;class IProject {public: virtual原创 2014-09-24 23:46:13 · 474 阅读 · 0 评论 -
设计模式观后(c++还原之二十 门面模式)
//门面模式//和字面意思一样,把看似杂乱的东西封装一个好看的门面//作者例子:写信——填写必要信息、封好、检查、邮递、//抽象基类class ILetterProcess {public: virtual void WriteContext(string context) = 0; virtual void FillEnvelope(string address)= 0 ; vi原创 2014-09-27 21:37:24 · 552 阅读 · 0 评论 -
设计模式观后(c++还原之二十六 桥梁模式)
//桥梁模式//作者用公司产品来举例,公司类成为桥梁//抽象产品类class Product {public: //产品要被生产和销售 virtual void BeProducted(){} virtual void BeSelled(){}};class House : public Product {public: void BeProducted() { cout原创 2014-10-06 21:21:14 · 617 阅读 · 0 评论 -
设计模式观后(c++还原之二十一 备忘录模式)
//备忘录模式//就是给发起人等给个备份,好恢复 前面的原型模式刚好可以用上(clone函数)//例子很简单会相对注释//备忘录角色class Originator;class Memento {private: string m_state;public: Memento(string _state) { m_state = _state; } string Get原创 2014-09-29 23:03:37 · 449 阅读 · 0 评论 -
设计模式观后(c++还原之二十三 状态模式)
//状态模式//首先作者举例是电梯的升降和操作(上升状态的关门、开门、运动等动作判断;下降状态的动作判断)//我第一次想到的是:用四个枚举来表示当前电梯状态,然后动作函数的执行用switch(状态) case(运行)来写。//来看作者的写法吧class Context;//后面的上下文类class OpenningState;//开门类class ClosingState;//关门类原创 2014-10-02 22:19:04 · 581 阅读 · 0 评论 -
设计模式观后(c++还原之二十二 访问者模式)
//访问者模式class IVisitor;//抽象员工类class Employee {public: const int MALE = 0;//男性 const int FEMALE = 1;//女private: string m_strname; string m_nsalary; int m_nsex;public: virtu原创 2014-10-01 22:21:39 · 467 阅读 · 0 评论 -
深入模板编程笔记四
template class my_vector {public: T* array; unsigned size; unsigned block_size; public: my_vector(unsigned bsz): array((T*)malloc(sizeof(T)*bsz)),size(0), block_size(bsz){}原创 2014-11-15 18:09:54 · 519 阅读 · 0 评论 -
设计模式观后(c++还原之二十四 解释器模式)
//解释器模式//作者示例:输入公式,运算公式(数学的加减法)//抽象表达式类class Expression {public: //key是公式的参数,value是具体的数字 virtual int InterPreter(map var) = 0;};//变量解释器class VarExpression : public Expression {private: char原创 2014-10-04 22:58:23 · 465 阅读 · 0 评论 -
设计模式观后(c++还原之十 代理模式)
//代理模式//代理个性,作者增加代理个性(收费接口);书写类。让GamePlayerProxy继承俩个类增加自己个性。class IGamePlayer {};class Iproxy {public: void Count() {cout << "nubmer";}};class GamePlayerProxy : public IGamePlayer, public Iprox原创 2014-09-15 20:54:41 · 524 阅读 · 0 评论 -
设计模式观后(c++还原之三 接口隔离)
//接口隔离class IPettyGirl {public: virtual void goodLooking(); virtual void niceFigure(); virtual void greatTemperament();};class PettyGirl : public IPettyGirl {private: string m_name;publi原创 2014-09-04 17:21:58 · 503 阅读 · 0 评论 -
设计模式观后(c++还原之二 依赖的信用)
依赖的信用原创 2014-09-04 15:23:32 · 696 阅读 · 0 评论 -
设计模式观后(c++还原之六 工厂模式)
//人类、女娲示例//感觉meiclass Human {public: virtual void GetColor(){} virtual void Talk(){}};class BlackHuman : public Human {public: virtual void GetColor() { cout << "black "; } virtual void Ta原创 2014-09-06 17:18:21 · 482 阅读 · 0 评论 -
设计模式观后(c++还原之十三 责任链模式)
using std::deque;using std::string;using std::cout;using std::list;//责任链模式//作者参考古代的女子三从四德原则,来举例//分析第一个示例,女子的请示必须是链状的流程,依次走或者continue//抽象基类class IWomen{public: virtual int GetType(){ ret原创 2014-09-18 23:21:15 · 454 阅读 · 0 评论 -
设计模式观后(c++还原之十六 适配器模式)
//适配器模式//这像一个补救模式,类A的接口无法与类C不匹配;便构件一个类B让A与B匹配,B与C匹配。//作者用的示例:人力资源管理//虚化 员工信息接口 类:Aclass IUserInfo {public: virtual string GetUserName() = 0; virtual string GetHomeAddress() = 0; virtual string原创 2014-09-22 22:31:28 · 430 阅读 · 0 评论 -
设计模式观后(c++还原之十四 修饰模式)
//修饰模式//这个是基于类的修饰。作者用父亲看成绩,然后签字来举例//需要对成绩进行修饰才能,让父亲开心,然后签字。//抽象修饰类class SchoolReport {public: SchoolReport(); virtual void Report() {}//家长看报告 virtual void Sign(string name) {}//家长签字};class F原创 2014-09-20 22:17:00 · 546 阅读 · 0 评论 -
设计模式观后(c++还原之五 单例模式)
已经到了作者的23个模式了原创 2014-09-06 15:16:02 · 458 阅读 · 0 评论 -
设计模式观后(c++还原之八 建造者模式)
//从前面的知识知道,重复功能函数放基类(视情况)run//车辆模型抽象基类class CarModel {private: deque* m_psequence; protected: virtual void Start() = 0; virtual void Stop() = 0; virtual void Alarm() = 0; v原创 2014-09-12 21:01:25 · 469 阅读 · 0 评论 -
设计模式观后(c++还原之十一 中介者模式)
//中介者模式//作者举得例子:采购管理类需要库存类和销售类,才能采购//库存类需要采购和销售类才能管理,销售需要库存和采购才能统计。//如此的设计,造成所有的类彼此之间互相依赖!有很大的耦合性(非常错误的选择) 产生中介者模式//先构建抽象中介者class AbstractMediator {protected: Purchase* p_purchase; Sale* p_原创 2014-09-16 23:21:02 · 446 阅读 · 0 评论 -
设计模式观后(c++还原之四 开闭原则 )
// Desinger.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include using std::cout;using std::list;using std::string;//开闭原则 class IBook {原创 2014-09-05 20:06:05 · 437 阅读 · 0 评论 -
设计模式观后(c++还原之六 虚拟工厂)
//抽象工厂模式//首先抽象工厂是工厂的扩展,书中对他的解释是当工厂出现俩个互相影响的产品线//示例;//作者将黄种人派生男人女人(黑种人,白种人一样)//八卦炉基类(工厂类),生产三种人。再派生俩个类,让其生产男人女人。最后场景类调用。//关系就像车的左右门一样class AbstractProductA {public: virtual void ShareMethod()原创 2014-09-10 08:37:09 · 643 阅读 · 0 评论 -
设计模式观后(c++还原之九 代理模式)
代理模式就用两篇文章来吧!代理模式之一原创 2014-09-14 22:08:17 · 454 阅读 · 0 评论 -
设计模式观后(c++还原 里氏替换原则)
//里氏替换原则1子类完全实现父类的方法2子类可以有自己的个性3覆盖实现父类方法时输入参数可以被放大。//手枪、士兵、场景设计class AbstractGun{public: virtual void shoot() { cout << "kill people!"; }};class HandGun : public AbstractGun{pu原创 2014-09-04 15:21:15 · 1102 阅读 · 0 评论 -
设计模式观后(c++还原之二十五 享元模式)
string int2string(int n) { char buffer[10] = {0}; _itoa_s(n, buffer, 10, 10); return string(buffer);}//享元模式//作者例子:报考系统的对象//每个用户的访问就构造一个对象会导致内存不够,作者设立关键字:多个用户使用一块内存//报考信息class SignInfo {priva原创 2014-10-05 20:58:55 · 465 阅读 · 0 评论