2016-09-05 39 views
1
data MyNum = One 
      | Two 
      | Three 
      deriving (Show, Eq) 

我只是構造OneTwoThree定義MyNum無法讀取自定義數據類型

*主要>:t的一

一個:: myNum的

但是當我添加x = read("One")::MyNum我ghci的程序產生錯誤:

沒有實例(讀的myNum )由於使用'閱讀'而產生

在表達式中:read(「One」):: MyNum

在爲「X」的公式:X =讀( 「1」):: myNum的

爲什麼我不能read呢?

回答

8

你必須得到Read中定義的MyNum

data MyNum = One 
      | Two 
      | Three 
      deriving (Show, Eq, Read) 

x = read("One")::MyNum 

*主要> X

一個

相關問題