gpt4 book ai didi

julia - 访问另一个函数中定义的函数

转载 作者:行者123 更新时间:2023-12-01 10:30:24 25 4
gpt4 key购买 nike

是否可以访问 julia 中另一个函数中定义的函数?例如:

julia> function f(x)
function g(x)
x^2
end
x * g(x)
end

f (generic function with 1 method)

julia> f(2)
8

julia> f.g(2)
ERROR: type #f has no field g
in eval_user_input(::Any, ::Base.REPL.REPLBackend) at ./REPL.jl:64
in macro expansion at ./REPL.jl:95 [inlined]
in (::Base.REPL.##3#4{Base.REPL.REPLBackend})() at ./event.jl:68

最佳答案

没有。在 julia 中,将模块用于本地功能通常更为理想

module F
function g(x)
x^2
end

function f(x)
x * g(x)
end

export f
end

using F

f(2)
F.g(2)

用例是什么?您可以定义一个自定义类型,为其提供一个函数字段,然后使该类型可调用(一个闭包)以实现您想要的行为。但是,这是否是解决 julia 问题的最佳方法是另一个问题。

关于julia - 访问另一个函数中定义的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43267612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com