Many functions in the STL or other commonly available libraries requires a pointer to an object (not the object itself). Also, many time you'll want to pass pointers. When you need that, the &
operator allows you to get a pointer to any object you have access to.
Browse through the boost
libraries and find some. One example:
template explicit shared_ptr(Y * p);
To pass in a pointer to a Y
you'd have to use the &
operator.
Furthermore, your profile says you're into 3-d games. Almost every C++ 3d library I know of uses pointers to arrays of floats or ints to manipulate everything. You need the &
operator to pass in the pointers to those arrays.