[問題] 要如何比較兩個東西?

看板C_and_CPP (C/C++)作者 (照る照る坊主)時間16年前 (2010/06/18 21:47), 編輯推噓4(4023)
留言27則, 8人參與, 最新討論串1/1
假設其他...的地方都沒有問題的話: 我的程式碼為 class BankAccount { ....... } ........ int main (){ BankAccount accountA(1234, 60000, 0.03); BankAccount accountB(987 , 30000, 0.05); if ( accountA > accountB ) cout<<"帳戶 A 多於 帳戶 B."<<endl; else if( accountA < accountB ) cout<<"帳戶 A 少於 帳戶 B."<<endl; else cout<<"帳戶 A 等於 帳戶 B."<<endl; system("pause"); return 0; } 請看main function裡 我要比較accountA和accountB裡的第二項東西(即比較60000和30000) 請問要怎麼比較? 結果要跑出: 帳戶 A 多於 帳戶 B. 先謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.62.52

06/18 21:54, , 1F
看class裡收ctor裡的第二個參數的member為何, 然後看是
06/18 21:54, 1F

06/18 21:54, , 2F
直接用.member讀它(public), 還是要用method取出來.
06/18 21:54, 2F

06/18 22:02, , 3F
第二個參數是dollars,不好意思 我不太懂你的意思
06/18 22:02, 3F

06/18 22:04, , 4F
如何要將accountA和accountB視為第二個參數呢
06/18 22:04, 4F

06/18 22:05, , 5F
型態是int?
06/18 22:05, 5F

06/18 22:05, , 6F
你懂如何存取class的data member或member function嗎??
06/18 22:05, 6F

06/18 22:05, , 7F
member function即method.
06/18 22:05, 7F

06/18 22:08, , 8F
第二個參數是double,我不懂member function,抱歉QQ
06/18 22:08, 8F

06/18 22:09, , 9F
第2個參數型態是double
06/18 22:09, 9F

06/18 22:14, , 10F
我想到的是 operator> 與 operator< 耶....XD
06/18 22:14, 10F

06/18 22:15, , 11F
對~ 好像是用operator< 和 > 寫,可是要如何寫?
06/18 22:15, 11F

06/18 22:17, , 12F
網路上與你手邊的書都該有範例 請先看一下吧
06/18 22:17, 12F

06/18 22:19, , 13F
所以是要求自己寫operator<或>就是了....~_~
06/18 22:19, 13F

06/18 22:21, , 14F
重點要如何把第二個參數拿來比較?
06/18 22:21, 14F

06/18 22:24, , 15F
overload > < operators
06/18 22:24, 15F

06/18 22:24, , 16F
誠心建議原po好好看一下書 這跟第x個參數並沒啥關係...
06/18 22:24, 16F

06/18 22:25, , 17F
bool BankAccount::operator>(const BankAccount& rhs)
06/18 22:25, 17F

06/18 22:27, , 18F
可以直接用 rhs.某成員, 即使某成員是 private
06/18 22:27, 18F

06/18 22:27, , 19F
如果沒記錯的話..
06/18 22:27, 19F

06/18 22:27, , 20F
推j大說的....
06/18 22:27, 20F

06/18 22:28, , 21F
但最好還是寫 bool isMoreMoney(const BankAccount& rhs)
06/18 22:28, 21F

06/18 22:29, , 22F
isMoreMoneyThan, 這樣 "語意" 才自然.
06/18 22:29, 22F

06/18 23:11, , 23F
謝謝專業的你們,我懂了一些
06/18 23:11, 23F

06/19 18:27, , 24F
硬是要說的話用 hasMoreMoneyThan 才對吧XD
06/19 18:27, 24F

06/20 03:22, , 25F
硬是要說的話 用hasMoreMoneyThan不應該return bool才對吧XD
06/20 03:22, 25F

06/20 19:15, , 26F
if (P.hasMoreMoneyThan(Q)) 這樣為啥不應該return bool
06/20 19:15, 26F

06/20 19:15, , 27F
太深奧了,我聽不懂
06/20 19:15, 27F
文章代碼(AID): #1C6taCYS (C_and_CPP)
文章代碼(AID): #1C6taCYS (C_and_CPP)