Reference passing allows variable to be modified by the function it's passed to.
Let's look at the following example:
Output:
num is incremented by 1 in theincrementValue function. Since it's passed
by value it remains 0 in the main function.
To pass by reference, the symbol & needs to be added before argument's name:
Output:
Since num is passed by reference at line 5, it's value has incremented
inside the main function too.
Arrays are always passed by reference.
Output:
Though not specified via the & symbol, array still gets modified by the function it's passed to.