2010-05-22 63 views
5

我嘗試做以下:Haskell - 如何投射類型?

10 ** length xs * x 

,但我得到:

沒有實例(浮動智力)從使用`產生 **」

+3

哦,只是要非常清楚:一般來說,你不會在Haskell中「投射」類型。類型之間有各種轉換方式,但沒有通常意義上的「類型轉換」。 – 2010-05-22 22:14:19

回答

8

你可以使用^提高到一個整數的力量。沒有必要轉換成浮動在這裏。

+0

謝謝,它似乎工作:) – MMM 2010-05-22 22:10:06

6

除了@sepp2k's answer,如果你真的需要從一個整數轉換爲其他類型的Num,請使用fromIntegral

-- # fromIntegral :: (Integral a, Num b) => a -> b 

10 ** fromIntegral (length xs) * x