作者oker (oker)
看板EE_DSnP
标题Re: [情报] 期末考示范考题 (一)
时间Sun Jan 13 23:34:08 2008
不知道老师是要怎样的回答
1.直接把operator <(){}删掉
2.献丑一下
#include <iostream>
#include <iomanip>
using namespace std;
#define MOD 8
class A
{
public:
A( const int x ){
_num = x;
}
friend bool operator < (const A a, const A b);
private:
int _num;
};
bool operator < (const A a, const A b)
{
return ((a._num % MOD) < (b._num % MOD));
}
int main()
{
A a(20);
A b(30);
cout << boolalpha << (a < b) << endl;
system("pause");
return 0;
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.77.195
1F:推 timrau:其实main()可以照原来的写 因为有A(const int)存在 01/13 23:34
2F:推 ric2k1:感谢, 不过说时在的充忙中题目的确出的不够好... 01/13 23:34
3F:→ ilway25:我觉得这样就动到 main 了... 01/13 23:35
4F:推 ric2k1:不去改 main() 的确会有问题, 先将题目收回改一下... 01/13 23:35
5F:推 timrau:不....不会有问题啊? 01/13 23:37
6F:→ ilway25:但是还是会照用 int 的 a<b 去算吧.. 不会变成A..? 01/13 23:38
7F:→ timrau:好像是如同楼上说的没错 01/13 23:41
8F:推 ric2k1:感谢楼上高手们的讨论, 题目已修改, 希望比较完善一点... 01/13 23:41
9F:推 ric2k1:要改 main() 也没关系, 只要不去更改原 code 的用意就好 01/13 23:42
10F:推 ilway25:不知道老师推荐 class 写法or function.. class 会变好长 01/13 23:43
11F:推 ric2k1:oker 的 class 写法是很好的示范, 但是考试时改成 function 01/13 23:44
12F:→ ric2k1:就好了... 01/13 23:46
13F:推 eemingh:唉..............oker您就别再装弱了...真是个大强者~!!! 01/14 12:31
14F:推 bumpwy:不好意思想问一下,请问老师写的到底是错在哪里阿? 01/14 18:48
15F:推 INsoarDEEP:我看不出错在哪里...>"< 01/14 18:58
16F:推 ShooterYang:为什麽可以overload已经存在的运算啊(int vs int)? 01/14 19:26
17F:推 timrau:楼上正好指出错误的地方 01/14 21:14