- 博客(19)
- 收藏
- 关注
原创 设计模式之工厂模式(c++)
我们可以从面包房购买到提拉米苏、拿破仑,当他们新出一款抹茶蛋糕时,收银台是不会被拆掉的,还是需要花钱购买 工厂模式就是为我们提供了创建对象的统一接口,新增的类型不会影响到接口 工厂模式包含三种:静态工厂、多态工厂、抽象工厂,它属于构造型设计模式静态工厂使用简单,适合于变化较少的情况namespace STATIC_FACTORY {class Shape {public: cla
2015-02-27 16:35:08
452
原创 设计模式之模板模式(c++ )
模板:按照模板来绘制就可以画出想要的图画,同时你可以根据自己的喜好去改变图画的颜色搭配 它为用户提供代码框架的同时提供给用户一定的灵活度,模板模式是应用最为广泛的一种设计模式,如android/ios的UI框架,模板模式是行为模式的一种 代码来源于c 编程思想class AppFramework{ bool _flag;protected: virtual void man
2015-02-06 12:09:18
425
原创 设计模式之适配器模式(c++ )
我们常用适配器的作用是将220v交流电转换为5A直流电,这样就可以给手机充电了,如果在大美利坚旅行,那需要携带可以转换110v交流电的适配器 适配器模式是最常用的模式之一,它的出现是为了让使用者可以从不同的数据提供者处获取自己想要的东西 常见的如在显示 <-> 数据中间加入适配器,这样显示部分的代码可以无需考虑数据提供者的类型,只要满足特定的接口即可 适配器模式是行为模式的一种 代码来源于c
2015-02-06 11:14:35
324
原创 设计模式之状态模式(c++)
状态模式的作用是将判断条件的代码转换为c++的多态性,状态在不同的对象实例间切换,从而完成了实际的判断,优化代码的结构代码来源于《c++编程思想》class Creature { class State { public: virtual const string response() = 0; }; class Frog : pub
2015-02-05 15:46:45
352
原创 一道计算奖金的编程题--三种不同的解法
题目:利润分级,奖金的比例不同,例如10万以内比例10%,10万到20万比例是5%解法一:比较简单的方案就是利用if-else,效率也是最高,这里就不写这部分代码了解法二:利用数据结构来处理,直接上代码static BonusCalcLevel Level[] = {{100000.0, 0.10}, {200000.0
2015-02-04 15:30:26
1000
原创 设计模式之命令模式(c++)
命令模式的作用是将函数转换为对象,将实际的操作与并行的框架分离,命令模式属于代码来源于c++编程思想class Task {public: virtual void operation() = 0;};class TaskRunner { //singleton pattern static vector tasks; TaskRun
2015-02-03 17:04:38
373
原创 深度探索c++对象模型学习笔记
1. 使用struct的一个合理理由是在与c代码接口时,并且struct是组合而非继承而来2. c++的多态必须要通过pointer或reference来存取3. 编译器会为empty class分配一个char,用来区分不同类实例,sizeof=14. static data member会被放在一个global data segment,所有的类实例共享这一
2015-01-28 20:31:51
484
翻译 Gson使用方法之Tree Representation
Tree prepresentation利用JsonElement建立LinkedTreeMap来j
2014-09-20 11:50:45
653
原创 C++线程回调函数调用类成员函数方法
目的:线程回调函数使用类成员函数的目的是可以直接访问类属性方法:利用this指针传递实例的地址,然后调用实例的成员函数,在成员函数中就可以访问类属性
2014-08-05 21:20:08
1815
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人