在julia中创建用户类型的视图

时间:2016-10-12 18:01:01

标签: julia array-view

新的julia 0.5改进了对数组视图的支持。是否可以使用此功能来允许自定义类型的视图?例如。所以我可以

immutable test
    a::Vector{Int}
    b::Vector{Int}
end

然后定义一个getview函数,例如在传递1:3作为论点时,给我一个test的{​​{1}}像test(view(a,1:3), view(b,1:3)的观点? (这样做会创建一个新的测试对象,其中a和b是子数组的副本,这不是我想要的)。 谢谢!

1 个答案:

答案 0 :(得分:3)

关键是,如果您希望类型包含Array或SubArray,则需要使其参数化。否则,它将在构造新对象时被转换(复制)。

var s = Snap('#someID');