Reference Parameters.
/* * Here we compare two ways of passing parameters. */ #include <iostream> using namespace std; void f1(int a) { a += 10; } void f2(int &a) { a += 10; } int main() { int m = 15; cout << "m = " << m << endl; f1(m); cout << "m = " << m << endl; f2(m); cout << "m = " << m << endl; }

Normal parameters are copies of their arguments. Reference paramters (denoted with &amp;), are aliases. Changing normal parameters does not change the argument. Changing reference parameters does.