在Julia

时间:2019-02-25 15:31:29

标签: struct julia unions nothing

假设我有一个简单的可变结构,其字段可以是Float或Nothing

mutable struct Foo
    bar::Union{Nothing, Float64}
end

foo = Foo(0.42)
foo.bar = Nothing

如果我尝试为Nothing分配任何内容,则会出现此错误:

MethodError: Cannot `convert` an object of type Type{Nothing} to an object of type Float64

我应该对结构进行不同的定义吗? 还是有其他解决方法?

提前谢谢

1 个答案:

答案 0 :(得分:3)

使用{ availHeight: 860, availLeft: 0, availTop: 0, availWidth: 1600, colorDepth: 24, height: 900, orientation: { angle: 0, onchange: null, type: "landscape-primary" }, pixelDepth: 24, width: 1600 } foo.bar = nothingNothing的类型。