【重构练习】大二作业 第3部分
2017-11-18 10:45
176 查看
在大整数类中,有这两个函数
friend bool operator<(long long ba1,BigAmount& ba2);
friend bool operator<(BigAmount& ba1,long long ba2);
由于CompareTo函数能判断大于、小于、等于,所以这两个函数只保留一个就可以了。(A > B就是B < A)在实际使用中并不会有太多的影响。
从便于实现的角度来看,应该删去
friend bool operator<(long long ba1,BigAmount& ba2);
因为它的实现
bool operator<(long long ba1,BigAmount& ba2)
{
return BigAmount(ba1).CompareTo(ba2) == -1;
}
相当别扭,而且多这么一个定义毫无意义。
除了小于号之外,其它的比较运算符的重载函数也这么处理。
friend bool operator<(long long ba1,BigAmount& ba2);
friend bool operator<(BigAmount& ba1,long long ba2);
由于CompareTo函数能判断大于、小于、等于,所以这两个函数只保留一个就可以了。(A > B就是B < A)在实际使用中并不会有太多的影响。
从便于实现的角度来看,应该删去
friend bool operator<(long long ba1,BigAmount& ba2);
因为它的实现
bool operator<(long long ba1,BigAmount& ba2)
{
return BigAmount(ba1).CompareTo(ba2) == -1;
}
相当别扭,而且多这么一个定义毫无意义。
除了小于号之外,其它的比较运算符的重载函数也这么处理。
相关文章推荐
- 【重构练习】 大二作业 第1部分
- 【重构练习】大二作业 第2部分
- 【重构练习】大二作业 第4部分
- 【重构练习】大二作业 第0部分
- c语言选择结构作业题练习分享第二部分(附答案、考点、难度、分析)
- Java贪吃蛇,部分实现,适合作为新手练习作业。
- THU数据结构编程作业一:真二叉树重构(Proper Rebuild)
- 自己的C#练习作业:数组中取最大和最小的值
- 第十四周课后作业——项目四(加法部分)
- 第3部分 关系数据库标准语言 SQL(2)
- githug通关部分黏贴(git代码练习)
- Java 编程的动态性,第3部分: 应用反射
- 作业综合练习-初始化工作
- android代码重构之按钮部分的代码重构
- 第3部分 装载与动态链接---(6)可执行文件的装载与进程
- 软件工程革命三部曲 —— 系统开发的业务部分重构在思考。
- Bash学习系列---第3/3部分
- awk学习系列-第3/3部分
- 【作业练习】 类与对象
- << Oracle高可用>>部分书面作业 - 第九课 RAC+DG技术的应用