[問題] 類別型態轉類別型態

看板C_and_CPP作者 (kswiss)時間14年前 (2011/10/16 16:28), 編輯推噓0(0010)
留言10則, 2人參與, 最新討論串1/2 (看更多)
開發平台(Platform): VC++ 問題(Question): 請問前輩們 1. 我把程式碼一的第14行宣告與31行~39行模仿與 程式碼二的第23行宣告與27行~33行 發覺程式碼一會compiler錯誤,請問有甚麼原因嗎??? 2. 我將成式碼一把Polar operator = (Polar p);改寫成Cartesian operator = (Polar p);並寫在Cartesian類別中, 並把31~39行改成以下這樣: Cartesian Cartesian::operator = (Polar p) //定義多載 = 號函數 { double r = p.getr(); double a = p.geta(); x = r * cos(a); y = r * sin(a); return Cartesian(x, y); } 我的問題是x,y的值都已經由 r * cos(a);與r * sin(a);傳入變數x,y了 為什麼還需要多這行return Cartesianian(x, y);然後透過Cartesian(double a, double b) {x = a; y = b;}來設定Cartesian類別的資料成員x,y??? 這樣有點多此一舉不是嗎??? 3.x,y的值都已經由 r * cos(a);與r * sin(a);傳入變數x,y了 return Cartesian(x, y);為什麼不可改寫成 return 0;???? 程式碼(Code): 程式碼一. http://codepad.org/WY7RAvrl 程式碼二. http://codepad.org/62Fxm3X4 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.90.181

10/16 18:34, , 1F
assignment沒reference要怎麼跑?( ̄ー ̄;)
10/16 18:34, 1F

10/16 18:47, , 2F
都已經assigment了為啥還需reference???
10/16 18:47, 2F

10/16 18:49, , 3F
已經assignment給Cartesian類別資料成員x,y了耶
10/16 18:49, 3F

10/16 19:18, , 4F
指"operator="assignment ( ̄ー ̄;)
10/16 19:18, 4F

10/16 19:23, , 5F
(2)(3)請參考 http://ppt.cc/UTof
10/16 19:23, 5F

10/16 19:27, , 6F
(1)試改Cartesian operator =(Polar p);
10/16 19:27, 6F

10/16 19:36, , 7F
<1>是return 的型態不對吧
10/16 19:36, 7F

10/16 19:36, , 8F
是嗎??
10/16 19:36, 8F

10/16 19:37, , 9F
<2><3>還是不知道你要表達什麼???
10/16 19:37, 9F

10/16 19:39, , 10F
operator後面參數不用reference還是會跑呀....= =
10/16 19:39, 10F
文章代碼(AID): #1EcfMJio (C_and_CPP)
文章代碼(AID): #1EcfMJio (C_and_CPP)