摘要:
同一个物品,有不同策略的情况。将算数封装成策略,根据实际情况调用策略。 下面是英雄选用不同战斗方式的策略。代码如xia : 1 #define _CRT_SECURE_NO_WARNINGS 2 #include <iostream> 3 4 using namespace std; 5 6 7 / 阅读全文
摘要:
要做一件事情,如果这件事件的过程中,基本步骤是一致的。就可以将这几步骤弄成一个函数。如何需要看情况,对其中的某一个步骤是否调用,则可用一个钩子函数,即通过虚函数重写一个bool型判断函数来确定。 代码如下: 1 #define _CRT_SECURE_NO_WARNINGS 2 #include < 阅读全文
摘要:
将函数功能/方法进行组合。 如: 1 #define _CRT_SECURE_NO_WARNINGS 2 #include <iostream> 3 4 using namespace std; 5 6 class SysA 7 { 8 public: 9 void operationA() { 1 阅读全文
摘要:
在原来的基础上,增加一个功能。 比如有个手机类,你可以写个抽象的装饰器类,该类中加入个手机类的成员,因为后期要用到这个手机类,且无法被更改,则可用protected:成员。 假如要写个手机贴膜的装饰器,则可继承写好的装饰器,然后对相应的虚函数功能进行重写。 代码示例: 1 #define _CRT_ 阅读全文
摘要:
在原来的基础上,增加一个功能。 比如有个手机类,你可以写个抽象的装饰器类,该类中加入个手机类的成员,因为后期要用到这个手机类,且无法被更改,则可用protected:成员。 假如要写个手机贴膜的装饰器,则可继承写好的装饰器,然后对相应的虚函数功能进行重写。 代码示例: 1 #define _CRT_ 阅读全文