By default, function arguments are passed by value (so that if
you change the value of the argument within the function, it does
not get changed outside of the function). If you wish to allow a
function to modify its arguments, you must pass them by
reference.

If you want an argument to a function to always be passed by
reference, you can prepend an ampersand (&) to the argument
name in the function definition: