1
遇到了麻烦,从一个辅助功能输出到我的函数的输出相匹配,我用下面的代码我:Haskell-类型匹配
getSemiDiag :: [[Maybe Player]] -> Int -> Int -> [Maybe Player]
getSemiDiag [] _ _ = []
getSemiDiag (x:xs) start size = if start > (size -1)
then []
else (x !! start) : (getSemiDiag xs (start+1) size)
semiRight :: [[Maybe Player]] -> Int -> Int -> [[Maybe Player]]
semiRight [] _ _ = []
semiRight (x:xs) start size = if start > (size -1)
then []
else (getSemiDiag x start size) : (semiRight xs (start+1) size)
功能semiRight不会,尽管我尽了最大努力匹配。有什么想法吗?
我不知道你想达到什么,但你传递一个'[也许播放器]''到哪里getSemiDiag'一个期望了' [[也许玩家]]'。你的意思是让'getSemiDiag(x:xs)开始大小:semiRight xs(start + 1)size'? –
'然后[]'应该可以'然后[[]]' – Wes
谢谢! – lopezrican304