在朱莉亚重载子阵列运算符

时间:2014-07-30 10:51:09

标签: operators julia

我知道在julia中创建二元运算符重载很容易,例如。

+(x,y)= x * y

我也知道a [i]是getindex和setindex的缩写!

我想知道如何重载子数组运算符,例如

一个[I,J,:,3:

我相信这只是一个被调用的函数,但无法找到它的名字

1 个答案:

答案 0 :(得分:5)

@which宏有助于找到正确的重载方法:

julia> sample=rand(3,4,5);

julia> @which(sample[1,1,1])
getindex(A::Array{T,N}, i1::Real, i2::Real, I::Real...) at array.jl:283

julia> @which(sample[1,1,:])
getindex(A::AbstractArray{T,N}, I...) at abstractarray.jl:487