•Only a variable can be
passed as an argument to a reference parameter because a function can assign a new value to the
argument.
•In contrast, an
arbitrarily complicated expression can be passed to a value parameter.
•Consider the following
function heading:
• void DoThis (float
val, //Value
• int& count) //Reference
•Then, the following
function calls are valid
–DoThis(someFloat,
someInt)
–DoThis(9.83, intCounter)
–DoThis(4.9 * sqrt(y), myInt);