gpt4 book ai didi

haskell - 在 Haskell 中创建 UArray Int(复数 double )

转载 作者:行者123 更新时间:2023-12-02 05:23:43 24 4
gpt4 key购买 nike

我正在尝试使用 UArray Int (Complex Double)。此签名很好,但是当我尝试使用 (!) 访问特定索引时,我收到错误消息。这是我尝试使用的代码:

test :: UArray Int (Complex Double) -> Complex Double
test arr = arr ! 0

我得到的错误:

No instance for (IArray UArray (Complex Double)) arising from a use of `!'
Possible fix:
add an instance declaration for (IArray UArray (Complex Double))
In the expression: arr ! 0
In an equation for `test': test arr = arr ! 0

这对 UArray Int Double 很有效,我很好奇为什么这对 (Complex Double) 不起作用。预先感谢您的帮助。

最佳答案

来自Data.Array.Unboxed documentation , 似乎有 IArray 的实例使用 UArray 仅适用于 CharDoubleInt 等类型,而不是多态的。如果你需要存储其他类型的值,你应该使用装箱 Array .

关于haskell - 在 Haskell 中创建 UArray Int(复数 double ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13461020/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com