定义嵌套函数在Julia禁止吗?



我可以说,到目前为止,我从未见过任何包维护人员定义嵌套函数:

function foo()
function bar()
# do
end
# do
end

在Julia中是被禁止的,还是会导致性能降低?

详细说明DanGetz的回应:

  1. 允许。
  2. 如果使用正确,不会影响性能。
  3. 如果使用不当,它可能会影响性能或代码的正确性(特别是当您从外部作用域捕获变量时),所以您需要小心。
  4. 在函数内部定义匿名函数更为常见。

如果您想了解更多关于潜在性能影响的信息,请参阅此处。

最新更新