'A' IS BASE CLASS.
'B' IS DERIVED CLASS OF 'A'.
'F1' IS FRIEND FUNCTION OF CLASS A
IT MEANS F1 SHOULD ALSO BE THE FRIEND FUNCTION OF DERIVED CLASS 'B'. AS DERIVED CLASS SHOULD HAVE ALL THE FEATURES OF BASE CLASS BY DEFINITION.
BUT WHEN WE TRY TO ACCESS THE PRIVATE MEMBERS OF DERIVED CLASS 'B' THROUGH FRIEND FUNCTION OF CLASS 'A' IT IS GIVING ERROR.IT MEANS 'F1' IS NOT BEHAVING AS FRIEND FUNCTION OF DERIVED CLASS 'B'.BUT WHY IS THIS HAPPENING?
CANT THE FRIEND FUNCTIONS BE INHERITED???????
A friend function by definition is not a member of the class for which it has friendship. That is, friend functions are not called with a "this" pointer. That is why friends are not inherited: they are essentially free functions.