【发布时间】:2017-02-19 05:55:32
【问题描述】:
我创建了我的不可变Tensor_field 和一个作用于张量的函数nabla(即nabla(a::Tensor_field) = do something。
我为张量添加了一个函数dot 的方法:Base.dot(a::Tensor_field, b::Tensor_field) = do something...。
现在我想定义一个新的行为,以使用 nabla 作为参数来运行 dot。
类似Base.dot(nabla::function, a::Tensor_field) = do something different。
我知道在 Julia 中,我们可以将函数作为参数传递给其他函数,但我在文档中找不到如何为“函数式”参数定义方法。
如果我输入 typeof(nabla),则输出为 My_Module_Name.#nabla,而不是真正的 DataType...
【问题讨论】:
-
澄清一下:
My_Module_Name.#nabla是一个真正的数据类型。名字怪怪的,不能正常访问(因为#开始评论)但是还是可以通过getfield(My_Module_Name, Symbol("#nabla"))访问。
标签: julia