我有一个新手问题。据我了解,结构体将具有字段,并且一旦按顺序传递它们。喜欢 :
julia> struct Foo
bar
baz
end
julia> foo = Foo(1, 2)
Foo(1, 2)
在 Makie 这样的东西中,主要结构是Figure()
. 所有教程都显示自定义参数,例如背景颜色、分辨率等。
f = Figure(backgroundcolor = :tomato)
但在文档字符串中,没有提及这些关键字。
先感谢您
我认为这是重复的:以编程方式将参数传递给 @kwdef struct
但要回答您的问题,如图所示,您可以通过将
Base.@kwdef
宏放在 之前来获得关键字字段struct
,即:然后做
Foo(baz=3)
退货Foo(nothing,3)
等。为了回答你关于他们在 中做什么的问题
Makie
,这里是他们制作图形的相关代码(来自他们的 GitHub 源代码):他们根据关键字参数创建一个字典,然后将它们手动传递给 Figure 结构,其定义为:
因此,他们使用该
Figure
函数来访问关键字参数,然后将适当的关键字传递给Figure
结构。