可变载体:给定指数的明确参考

时间:2015-12-26 19:05:51

标签: haskell vector functional-programming

我理解vector提供了一个包含clear函数的可变接口,清除了对向量中存储的所有对象的引用。我找不到一个类似的函数来清除向量中索引n处存储的引用。有没有办法实现这样的事情,如果没有,为什么?

注意:该功能看起来像这样:

clearAtIndex :: MVector (PrimState m) a -> Int -> m ()

1 个答案:

答案 0 :(得分:4)

包本身没有类似内容,但可以使用same implementation as clear

clearAtIndex :: MVector (PrimState m) a -> Int -> m ()
clearAtIndex v n = write v n uninitialised

uninitialised :: a
uninitialised = error "clearAtIndex: uninitialised element"

clear基本上相同,但使用set v uninitialised才能使用可能的优化。