A class or a structure may declare any function it's friend. If a function is a friend of a class, it may access all it's protected and private members:
// Forward declaration of functions.
void friend_function();
void non_friend_function();
class PrivateHolder {
public:
PrivateHolder(in...