如下所示,Julia中自己所写的类型如果赋予show函数的定义,在REPL显示时会根据我的定义。但是至于Vector
和Nothing
的对象,好像不一样……
julia> struct A end
julia> Base.show(io::IO, ::A) = print(io, "A's object")
julia> [1, 3, 0]
3-element Vector{Int64}:
1
3
0
julia> show(ans)
[1, 3, 0]
julia> nothing
julia> print(nothing)
nothing
julia> show(A())
A's object
julia> print(A())
A's object
因此发现,show函数所打印的内容不总是与REPL中直接显示的内容一致。那我能不能把自己定义的结构体搞成这样?