我想实现一个函数来总结两个列表的内容。这里是我的代码:添加两个不同大小的列表haskell的内容
sum'' :: Num a => [a] -> [a] -> [a]
sum'' [] [] = []
sum'' (x:xs) (y:ys) = (x + y) : sum'' xs ys
如果我输入:
sum'' [1,2,3] [4,5,6]
我得到[5,7,9]
,这就是我想要的。我遇到的问题是不同的列表大小。如果输入:
sum'' [] [1,2,3]
我希望它返回[]
。或者
sum'' [1,2] [4,5,6]
我希望它返回[5,7]
。我得到这个错误,不知道为什么:Non-exhaustive patterns in function sum''
。
任何帮助将不胜感激。
使用'-Wall'标志打开警告会使GHC在编译时警告错过的情况。推荐的。 – chi