Search code examples
functionjuliaglobal-variables

How to assign new values to global variable from inside a function


I want a function to assign a new value to a global variable:

value = ""

function edit_value(v::String)
    value = v
end

However, it does not assign the global value the new value. Julia creates a new local variable value inside the function.

How can I modify the global variable inside a function?


Solution

  • You can do that with the keyword global

    function edit_value(v::String)
        global value = v
    end
    

    Keep in mind that global variables, especially when changed within a function, should be handled with care.