作者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