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 keyword ref needs to be added before argument in both
function definition and call:
Output:
Since num is passed by reference at line 10, it's value has incremented
inside the main function too.
Arrays are always passed by reference.
Output:
Though not specified via the ref keyword, array still gets modified by the function it's passed to.