【发布时间】:2021-02-22 22:34:44
【问题描述】:
如果我在 Julia 中定义一个结构,是否可以将其中一个字段的类型声明为与结构本身的类型相同?例如,我想定义一个结构 NodeStruct 有两个字段,data 和 next 其中data 是一些标准类型(例如AbstractFloat)和next 是NodeStruct 类型或nothing .考虑这个给出错误LoadError: UndefVarError: NodeStruct not defined的示例代码。
import Base.@kwdef
@kwdef mutable struct NodeStruct{A<:AbstractFloat, B<:Union{NodeStruct, Nothing}}
data ::A
next ::B
end
有可能以某种方式做到这一点吗?我希望能够以参数方式执行此操作,因为performance tips 建议这样做,并且计算时间对我来说非常重要。我在types 或constructors 的文档中找不到任何解决此问题的信息。
【问题讨论】:
标签: performance struct types julia field