0
下面的代码来枚举 “向后二进制”Haskell的 “未解决的重载”
bin :: [Char] -> Int
bin a = temp (a, 1)
where
temp :: ([Char], Int) -> Int
temp ([], n) = 0
temp (('1':x), n) = temp(x, (n*2)) + 1*n
temp (('0':x), n) = temp(x, (n*2))
产生以下错误:
TYPE - Unresolved Overloading
*** Type : Num [Char] => Int
*** Expression : Bin 1001
类似的码能正常工作时,它是[INT] - >内部,我不知道为什么它不以这种方式工作。
功能看起来不错,但看起来你用错了,下次尝试把功能的用法也太 –
哎呀,那就是Main> Bin 1001 – Aeglen
不用担心,只是想给你提示,所以你可以更快地找到帮助;) –