我希望得到一些关于这个成语的指导
h(x) = x^2
type mytype
f::Function
end
function doit(m::mytype,x)
eval(Expr(:call,m.f,x))
end
m = mytype(h)
doit(m,3)
当我想以编程方式评估函数时,是好julian。所以,我有一个函数f
以某种类型存储,在某一点上我想评估它。
答案 0 :(得分:4)
m.f(x)
似乎和eval(Expr(:call, m.f, x))
一样好:
h(x) = x^2
type mytype
f::Function
end
function doit(m::mytype,x)
m.f(x)
end
m = mytype(h)
doit(m,3)
另外,您不需要doit
并且可以直接致电m.f(3)
,至少在您的特定示例中是这样:
h(x) = x^2
type mytype
f::Function
end
m = mytype(h)
m.f(3)