To declare a function as a friend
of a class, precede the function prototype in the class definition with keyword friend
. To declare all member functions of class ClassTwo
as friends of class ClassOne
, place a declaration of the form
friend class ClassTwo;
in the definition of class ClassOne
.
Friendship is granted, not taken—for class B to be a friend
of class A, class A must explicitly declare that class B is its friend
. Friendship is not symmetric—if class A is a friend
of class B, you cannot infer that class B is a friend
of class A. Friendship is not transitive—if class A is a friend
of class B and class B is a friend
of class C, you cannot infer that class A is a friend
of class C.