gpt4 book ai didi

types - 覆盖 `show` 是一个类型的字段

转载 作者:行者123 更新时间:2023-12-02 03:06:55 24 4
gpt4 key购买 nike

type MyCompositeType
x::Float64
y::Int
end

z = MyCompositeType(1.0,2)

我希望 Julia 中的标准显示和显示方法被重写为仅显示/显示 z.x,但重写 display(x::MyCompositeType) 不会这样做,我找不到 MIME 类型的介绍。

最佳答案

如果您只是想让您的类型显示得与某些组件完全一样,则将 show 转发给其他类型。

julia> type MyType
obj::Vector{Int}
other::Float64
end

julia> Base.show(io::IO, x::MyType) = show(io, x.obj)

julia> Base.show(io::IO, m::MIME"text/plain", x::MyType) = show(io, m, x.obj)

julia> MyType([1, 2, 3], 1.5)
3-element Array{Int64,1}:
1
2
3

julia> println(MyType([1, 2, 3], 1.5))
[1, 2, 3]

关于types - 覆盖 `show` 是一个类型的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42126895/

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