Name
friend specifier — Grants access to private class members
Synopsis
decl-specifier := friendThe 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;
...
};Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access