Julia 选择结构数组或多个数组的准则

Julia 选择结构数组或多个数组的准则,julia,Julia,其他语言也有人问过这个问题。我想问一下关于朱莉娅的问题 在结构数组之间进行选择的一般准则是什么 struct vertex x::Real y::Real gradient_x::Real gradient_y::Real end myarray::Array{Vertex} 和多个阵列 xpositions::Array{<:Real} ypositions::Array{<:Real} gradient_x::Array{<:Real}

其他语言也有人问过这个问题。我想问一下关于朱莉娅的问题

在结构数组之间进行选择的一般准则是什么

struct vertex
    x::Real
    y::Real
    gradient_x::Real
    gradient_y::Real
end

myarray::Array{Vertex}
和多个阵列

xpositions::Array{<:Real}
ypositions::Array{<:Real}
gradient_x::Array{<:Real}
gradient_y::Array{<:Real}

xpositions::Array{您当前的
struct
性能会很差。从

避免使用抽象类型的字段

同样,您应该始终更喜欢
Vector{
struct Vertex{T<:Real}
    x::T
    y::T
    gradient_x::T
    gradient_y::T
end
xvec = [ v.x for v in vertexvec ]
f(x, y, gradient_x, gradient_y)
f(v::Vertex) = f(v.x, v.y, v.gradient_x, v.gradient_y)
f.(vv)