C++ inherit from 2 different classes?

The other way to do it is often called component architecture. You make a class/struct that has the functionality you want, InteractingComponent and then give that to each of your Class types that wants to have that type of behavior.

UE4 has a Component system, you can do it literally that way, or you can just make it yourself and assign it to a variable in your classes that have it.