【发布时间】:2013-11-12 11:39:39
【问题描述】:
main = do
putStrLn $myLast [1,2,3,4]
myLast :: [a] -> a
myLast [x] = x
myLast (_:xs) = myLast xs
当我尝试运行此代码时,我收到以下消息:
"没有由文字 '1' 产生的 (Num String) 实例 可能的解决方法:为 (Num String)" 添加一个实例声明
当我使用列表 ["1","2","3,"4"] 运行时,它运行良好。我没有指定类型,但它不适用于 ints。
【问题讨论】:
-
这只是另一种说法,数字不是字符串,而 putStrLn 非常想要一个字符串。
标签: haskell