•When a class (declaring class) declares another class (friend class) to be a friend, the friend class'
member functions can
invoke the protected or private member functions or use the protected or private data members of the declaring class.
•To do so, the friend class must have access to an object of the declaring class' type.
•This can be done by having an object of the friend class as a data member or a pointer to an object of
the friend class.