virtual inheritance friend virtual functions virtual method table friend function
class friend friend function