gpt4 book ai didi

arrays - Julia:将元素附加到自定义类型数组

转载 作者:行者123 更新时间:2023-12-04 23:16:22 28 4
gpt4 key购买 nike

在 Julia 中将元素附加到数组的工作方式如下:

v = Array{Int32, 1}(0)
append!(v, 1)
append!(v, 2)
println(v) # prints: Int32[1,2]

当我用自定义类型尝试这个时
type Node
label::String
value::Int32
end
nodes = Array{Node, 1}(0)
append!(nodes, Node("a", 42))

我收到以下错误:
ERROR: LoadError: MethodError: no method matching length(::Node)

我想我必须“实现” length方法,但不知道如何。

最佳答案

append!命令不会做你认为它会做的事情。你在想 push!命令。
append!命令将两个数组附加在一起。两个参数都需要是数组:

julia> append!(nodes, [Node("a", 42)])
1-element Array{Node,1}:
Node("a",42)

length实现必要的
(该错误只是告诉您它尝试读取第二个参数的数组长度,并找到了不是数组的内容。)

关于arrays - Julia:将元素附加到自定义类型数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40652324/

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