Name
friend specifier — Grants access to private class members
Synopsis
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.
Friendship is not transitive, nor is it inherited.
Example
class list {friend
bool operator==(const list& a, const list& b);friend
class node; ... };
Get C++ In a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.