看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) codebloke 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 學校講義的小練習 例: http://codepad.org/Ci48qY9q 練習:擴充上例class cPoint 增加一個函數成員Mirror() ,回傳該物件對y軸對稱點的cPoint物件.使用下列的main()函數測試之. int main() { cPoint p1,p2; p1.Reset(); p1.Move(3.0,4.0); p2=p1.Mirror(); cout<<p2.X()<<","<<p2.Y()<<endl; return(0); } 我這樣加入(跑不出來) http://codepad.org/3s6eLp2P ---------- 1.函數的問題.我加入的是 double mirror(){s=x-s;x=x-s;return(x);} 因為以Y軸對稱 只有x座標(數值)變得不一樣 (但是函數這樣打..就是覺得哪裡怪怪的...) 2.main裡面的 p2=p1.Mirror(); 好像會出錯 (是因為p2是物件然後p1.Mirror是回傳一個值(double)嗎? 3.想請問該怎麼寫才跑得出來QQ.. ----- 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): 初學的練習但是想了好久還是不會QQ 不知道函數該怎麼弄 請各位神人賜教(跪) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.171.148.47 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1433411546.A.E34.html ※ 編輯: AgentSkye56 (1.171.148.47), 06/04/2015 17:55:04 ※ 編輯: AgentSkye56 (1.171.148.47), 06/04/2015 18:10:26
Feis: 1. 看不懂你在寫甚麼? s 要幹嘛? 06/04 18:11
就是減掉原本x座標兩次變成對稱於y軸的那一點 但是我也只想得到這樣寫QQ
Feis: 2. 所以你應該回傳的型態是 cPoint 06/04 18:12
※ 編輯: AgentSkye56 (1.171.148.47), 06/04/2015 19:18:55
Feis: 這樣寫不會是你的意思. 而且你要的就是 x = -x 而已 06/04 19:47
Feis: 而且我沒猜錯的話. Mirror() 應該不會改到 x 06/04 19:47
Feis: 他應該是希望你把 Mirror 後的點 "回傳" 06/04 19:47
AgentSkye56: 那想請問 宣告mirror用void是不是錯的? 06/04 20:06
AgentSkye56: 我用cPoint宣告跑出來了!!但是數字怪怪的XD 06/04 20:08
AgentSkye56: Mirror的函數 還是不知道該怎麼寫Q"Q 06/04 20:44
Feis: 你要回傳一個 cPoint, 那個 cPoint 的 x 為原本的 -x 06/04 21:05
Feis: y 為原本的 y.... 言盡於此, 作業還是自己寫啊.. 06/04 21:05
AgentSkye56: ok感謝大大~~我再試試看 其實我已經畢業了XD 06/04 21:14
AgentSkye56: 只是碩班可能會用到 先複習一下QQ 06/04 21:16