在Julia函数中使用全局变量

在Julia函数中使用全局变量,julia,Julia,如何在函数内部创建/使用全局变量 如果在一个函数中生成全局变量,如何在后续函数中引用它?以下是您需要执行的操作: function a() global z = 0 print(z) end function b() global z += 1 print(z) end a() b() 请注意,在函数“b”中,如果不将“z”引用为“全局z”,它将在没有定义“z”变量的局部范围中查找,并给出一个错误 程序输出:“01” 编辑:正如Michael在下面的评论中指

如何在函数内部创建/使用全局变量


如果在一个函数中生成全局变量,如何在后续函数中引用它?

以下是您需要执行的操作:

function a()
    global z = 0
    print(z)
end

function b()
    global z += 1
    print(z)
end

a()
b()
请注意,在函数“b”中,如果不将“z”引用为“全局z”,它将在没有定义“z”变量的局部范围中查找,并给出一个错误

程序输出:“01”


编辑:正如Michael在下面的评论中指出的,在实践中使用这种全球范式通常不是一个好主意。这可能会导致代码难以调试、理解,并且输出可能无效

您可能会补充说,在大多数情况下,捕获变量(尤其是非常量全局变量)是一个非常糟糕的想法,而且