作者AgentSkye56 (絲凱56)
看板C_and_CPP
標題[問題] 物件與函數問題
時間Thu Jun 4 17:52:23 2015
開發平台(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