friend specifier

friend specifier

Grants access to private class members

decl-specifier := friend

The friend specifier declares a friend function,
class, or template. A friend declaration can appear only in a class
or class template definition. A friend has full access to the private
members of the class that contains the friend declaration. A friend
function declaration can be a function definition.

If a class template contains a friend declaration, all instantiations
of the template grant friendship. If the friend is a template
declaration, all instantiations of the template are friends. If the
friend is a template specialization or instantiation, only that
specialization or instantiation is a friend.