作者fcoldstar (飛揚寒星)
看板C_and_CPP
標題[問題] Binary Search Tree function的回傳問題
時間Thu May 27 23:27:02 2010
下面是code:
BST.h->
http://codepad.org/Bopxek4k
testBST.cpp->
http://codepad.org/WyzXahOg
compiler: DevC++
問題:
BST.h的第30、34行,提示invalid conversion from `double*' to `int'
為什麼function的recursion會出現invalid conversion的錯誤??
明明return 的都是 double 的 pointer... @@
此外,第37行也提示cannot convert `double* const*' to `double*' in return
即使加了 const_cast<E*>似乎也沒有用...
請問有什麼辦法可以解決嗎?
這些關於conversion的問題,雖然我查了書和網路資料,試了不同方法都還是不能解決@@
懇請高手指正,謝謝!
PS:因為是作業,老師要求只能修改標有// you have to implement here的
function“內部”(不包含prototype)的内容
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.4.185
→ Dannvix:怎麼會有老師叫學生在 header files 裡 implement...@_@ 05/27 23:29
→ james732:template要在header裡寫implement倒是無可厚非 05/27 23:30
→ fcoldstar:沒錯,只是主要不是template的問題 05/27 23:32
→ fcoldstar:那些constant的conversion如果說把prototype裡的const 05/27 23:33
→ fcoldstar:全都刪掉就不存在了,但是作業不允許這樣做@@ 05/27 23:33
→ fcoldstar:而且那個“int”怎麼跑出來的實在搞不懂…… 05/27 23:34
→ fcoldstar:如果令E=double,那麼pElement全都是double的pointer才對 05/27 23:36
→ Dannvix:原來如此,不太熟 template,受教了 <( _ _ )> 05/28 00:17
→ bleed1979:可以用wiki查一下binary tree和binary search tree 05/28 09:52