What is the difference between reference parameter and output parameter?
Modifications of a reference parameter and output parameter impact the corresponding argument. So an output parameter is similar to a reference parameter, except that the initial value of the caller-provided argument is unimportant.
In C# a reference parameter is declared with a ref modifier but an output parameter is declared with an out modifier.