如何在 Julia 对象中声明变量的类型?

费边

如何在 Julia 中的对象的构造函数中声明一个简约类型的变量?例如,请考虑以下情况:

type DetermineType
  foobar::Base.Prod2{LinSpace{Float64},LinSpace{Float64}}
end

function DetermineType(;foo = linspace(0, 1, 10),
                bar = linspace(0, 1, 10))
  foobar = Base.product(foo, bar)
  return DetermineType(foobar)
end

的声明foobarBase.Prod2{LinSpace{Float64},LinSpace{Float64}}我决定使用这种类型,因为它是typeof(foobar). 虽然这个声明还不算太长,但Base.product有两个以上的Linspace对象很快就会变得非常冗长。通过Julia的有关文档会后类型我想我在寻找supertypefoobar但是,我不知道如何获得它。有人可以帮忙吗?

迈克尔·K·博雷加德
  1. 超类型可以通过supertype. 在这种情况下,supertype(typeof(foobar))是一个Base.Iterators.AbstractProdIterator
  2. 您需要专业化的程度取决于您需要功能的专业化程度。您很容易最终过度专业化该类型。在这种情况下,您也许可以省略类型参数而只使用foobar::Base.Iterators.Prod2.
  3. 我不知道为什么完整的类型不漂亮——这是描述类型要求的一种非常简洁的方式,如果你要求类型受到如此限制。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Julia类型声明的中定义类型的元组

来自分类Dev

如何在Julia中不打印类型?

来自分类Dev

如何在Julia中创建滞后变量?

来自分类Dev

如何在Julia中超载+ =?

来自分类Dev

如何在julia中解析?

来自分类Dev

如何在Julia中计算CAPM变量?

来自分类Dev

如何在Julia中实现迭代器?

来自分类Dev

如何在Julia中构建POE集成

来自分类Dev

如何在Julia中交织数组

来自分类Dev

如何在Julia中撤消“使用模块”?

来自分类Dev

如何在Julia中组织复杂的数据

来自分类Dev

如何在Julia REPL中删除功能?

来自分类Dev

如何在Julia中引发特定异常

来自分类Dev

如何在Julia中复制文件?

来自分类Dev

如何在Julia中绘制热图

来自分类Dev

如何在Julia中实现递减的for循环?

来自分类Dev

如何在Julia中设置MIME编码?

来自分类Dev

如何在RMarkdown中运行Julia块

来自分类Dev

如何在Julia中识别独立球体?

来自分类Dev

如何在Julia中实现SingleLinkedList

来自分类Dev

如何在Julia中获取图像的属性

来自分类Dev

如何在Julia中捕获Linux信号

来自分类Dev

如何在Julia中播放声音

来自分类Dev

如何在Julia中制作互动剧情

来自分类Dev

如何在Julia中交织数组

来自分类Dev

如何在Julia中处理“ NA”

来自分类Dev

如何在 Julia 中显示字段值

来自分类Dev

如何在 Julia 中检索数组数组?

来自分类Dev

如何在 julia 中运行构建的命令?