6.泡妞与设计模式(七)策略模式

STRATEGY 策略模式

策略模式:策略模式针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模把行为和环境分开。环境类负责维持和查询行为类,各种算法在具体的策略类中提供。由于算法和环境独立开来,算法的增减,修改都不会影响到环境和客户端。

跟不同类型的MM约会,要用不同的策略,有的请电影比较好,有的则去吃小吃效果不错,有的去海边浪漫最合适,单目的都是为了得到MM的芳心,我的追MM锦囊中有好多Strategy哦。

 

代码示例:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <Windows.h>
 4 
 5 //函数声明,输出到notepad
 6 void speak(char *str);
 7 
 8 //根据环境决定行为
 9 void mySpeak(char *eve)
10 {
11     if (strcmp(eve, "face-English") == 0)
12     {
13         speak("hello");
14     }
15     else if (strcmp(eve, "face-Chinese") == 0)
16     {
17         speak("ni hao");
18     }
19 }
20 
21 //输出到notepad
22 void speak(char *str)
23 {
24     HWND win = FindWindowA("Notepad", "无标题 - 记事本");
25     HWND con = FindWindowExA(win, NULL, "Edit", "");
26     if (win == NULL)
27     {
28         printf("没有发现\n");
29     }
30     else
31     {
32         for (char *p = str; *p != '\0'; p++)
33         {
34             SendMessageA(con, WM_CHAR, (WPARAM)(*p), 0);
35             Sleep(50);
36         }
37     }
38 }
39 
40 void main()
41 {
42     mySpeak("face-English");
43     
44     system("pause");
45 }

 

转载于:https://www.cnblogs.com/xiaochi/p/8540194.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值