结构字段的默认初始化状态



在Julia v0.6下,简单的代码:

julia> struct A
             x::Int = 1
       end   

生成此错误:

ERROR: syntax: "x::Int=1" inside type definition is reserved

这是一个相当难以捉摸的信息:保留什么?

-> 我是否必须了解这种定义在未来的 Julia 修订版中将被允许?

可以通过Parameters.jl获得。

julia> using Parameters
julia> @with_kw struct A
           a::Int = 6
           b::Float64 = -1.1
           c::UInt8
       end
julia> A(c=4)
A
  a: 6
  b: -1.1
  c: 4

最新更新