2014-10-30 29 views
0

这与Julia有特定的关系,他们在文档中提到了这一点。我注意到我的Julia代码中发生了以下情况:我可以在julia函数中使用全局变量的值,而无需将它们传递给函数。有人可以解释发生了什么吗?函数参数遵循“传递共享”是什么意思?

回答

1

您可能想要阅读有关"scope"的手册部分。

变量作用很像功能:

function foo(x) 
    return bar(x)^2 
end 

你不必在通过bar作为参数,内部定义它,或者声明它是一个全球性的功能。但是,如果您想要,您可以定义一个内部bar函数,该函数在本地覆盖全局函数bar。变量的作用类似:只有在明确使用global时,才需要修改函数内的全局变量。

+0

值得一提的是,全局变量并不是完全全局的,而是作用于当前模块。 – 2014-10-31 16:39:55

相关问题