重构方法
来源:互联网 发布:大唐后妃珍珠传奇 知乎 编辑:程序博客网 时间:2024/05/21 08:44
1.合并条件式
if (date.before (SUMMER_START) || date.after(SUMMER_END))
charge = a + b;
else
charge = a;
修改为:
if (notSummer(date))
charge = a + b;
else
charge = a;
2.以多态替换条件式
#include "stdafx.h"
class Tbird
{
public:
virtual int getSpeed()
{
return 1;
}
};
class Tmaque : public Tbird
{
public:
int getSpeed()
{
return 10;
}
};
class Tdayan : public Tbird
{
public:
int getSpeed()
{
return 100;
}
};
class Tlaoying : public Tbird
{
public:
int getSpeed()
{
return 1000;
}
};
int getvalue(Tbird *input)
{
return input->getSpeed();
}
int main(int argc, char* argv[])
{
Tlaoying Laoying;
Tmaque B;
Tdayan D;
Tbird *uu = new Tlaoying();
int ispeed = getvalue(&Laoying);
ispeed = uu->getSpeed();
ispeed = getvalue(&B);
ispeed = getvalue(&D);
return 0;
}
- 重构方法
- MyEclipse重构方法
- 重构方法
- 重构方法
- 代码重构方法
- 重构方法
- 重构方法 mark
- 重构方法
- 代码重构方法
- 方法重构
- 重构方法之大型重构
- switch方法重构案例
- 重构方法简单列表
- ruby程序重构方法
- maven 重构项目方法
- 工厂方法重构策略
- 代码重构技巧方法
- 【机房重构】构造方法
- 2008年05月21日
- [译文]JPA的实施模式:双向关联
- 网络日志(2009.7.24)
- 向上滚动的文本
- JavaScript 最基本的弹出窗口代码
- 重构方法
- 有个写内核笔记
- HeadFirst设计模式一书中的9条设计原则(Design Principle)
- Updated SQL Server 2000 Sample Database Files
- [转]TortoiseSVN使用简介
- (转)MIDlet的开发流程与部署
- String.Empty,NULL和""的区别
- 我和Flex 3 的一些事情
- Froms验证技巧