3
data II = I Int Int deriving (Show)
instance II Show where
show I a b = show (a+b)
showt.hs:3:2:show' is not a (visible) method of class
II”下面的haskell类型类实例有什么问题?
data II = I Int Int deriving (Show)
instance II Show where
show I a b = show (a+b)
showt.hs:3:2:show' is not a (visible) method of class
II”下面的haskell类型类实例有什么问题?
类的名称应该来在实例声明的类型之前。您还需要删除deriving
子句,因为您提供了自己的实例,而不是使用自动派生的实例。您还需要在单个参数的周围添加括号来表示show
,否则它看起来像解析器的3个参数。
data II = I Int Int
instance Show II where
show (I a b) = show (a+b)