@end
Main方法调用
复制代码
#import <Foundation/Foundation.h>
#import "CashContext.h"
int main (int argc, const char *argv[])
{
@autoreleasepool {
CashContext *cc = [[CashContext alloc]MyInit:3];
double total;
total = [cc GetResult:400];
NSLog(@"Total Money 400,the resual is %f", total);
}
return 0;
}
以上是对应的策略模式中相应的类,有一点需要声明的是,这些代码是在有ARC环境下书写的,所以不需要手动释放其中的资源。所以有些传递指针地方没有进行手动释放,在此解释一下。
什么情况下需要用策略模式呢,其实我的理解是,当我们在分析需求的过程中,需要在不同时间应用不同的业务规则,就可以考虑使用策略模式处理这种变化的可能性。另外,策略模式的优点是简化了单元测试,因为每个算法都有自己的类,可以通过自己的接口单独测试。
注:相关教程知识阅读请移步到IOS开发频道。










