A reference serves as an alternative name for an object. In real-world programs, references are primarily used as formal parameters to functions.
A reference is a compound type that is defined by preceding a variable name by the & symbol. A compound type is a type that is defined in terms of another type. In the case of references, each reference type “refers to” some other type. We cannot define a reference to a reference type, but can make a reference to any other data type.
A reference must be initialized using an object of the same type as the reference:
Example
#include <iostream> int main() { int ival = 1024; int &refVal = ival; // ok: refVal refers to ival int &refVal2; // error: a reference must be initialized int &refVal3 = 10; // error: initializer must be an object getchar(); return 0; }