[問題] 有多個執行個體符合引數清單

看板C_and_CPP (C/C++)作者 (mistborn82)時間10年前 (2015/11/24 08:26), 編輯推噓3(305)
留言8則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) vc2010++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) opencv 問題(Question): 小弟新手 在做影像邊緣計算時遇到的問題 兩個for迴圈 做影像長寬pixel的運算 迴圈內把每個pixel的梯度做開根號 和做atan 大概像下面這樣 for(....){ for(....){ Gx=2個矩陣運算(出來為一整數) Gy=2個矩陣運算(出來為一整數) G = sqrt(Gx^2 + Gy^2 ) ; theta = atan(Gy / Gx) *(3.1415/180); ...... .判斷theta角度..... .......... ...... 會出現 多載函式sqrt有多個執行個體符合引數清單 多載函式atan有多個執行個體符合引數清單 這2個錯誤 但是把sqrt 改成pow(Gx^2 + Gy^2,0.5)就沒事了 但是atan還是錯的 請教各位高手原因 謝謝~~ 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.143.175.208 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1448324796.A.D17.html

11/24 08:49, , 1F
浮點數後面一定要加f
11/24 08:49, 1F

11/24 08:51, , 2F
3.1415 => 3.1415f ,Double的話要加d
11/24 08:51, 2F

11/24 10:39, , 3F
有加過但還是錯的
11/24 10:39, 3F

11/24 14:16, , 4F
因為你給的參數是int,他要求的是float與double
11/24 14:16, 4F

11/24 14:17, , 5F
他不知道你是要呼叫哪一個sqrt
11/24 14:17, 5F

11/24 17:06, , 6F
(Gy / Gx) 還是整數, 可能差很大, 故請先將 Gx 或 Gy 轉型.
11/24 17:06, 6F

11/24 17:11, , 7F
另外, Gx^2 真的是這樣寫嗎? 或只是示意...??
11/24 17:11, 7F

11/24 17:36, , 8F
應該是把xor運算子覆載了........
11/24 17:36, 8F
文章代碼(AID): #1MKwwyqN (C_and_CPP)
文章代碼(AID): #1MKwwyqN (C_and_CPP)