How to extend an Interface?

In c++ you can extend an interface by using virtual inheritance, like so:

class IA{
public:
    virtual void a() = 0;
};

class IB : virtual public IA{
public:
    virtual void b() = 0;
};

The idea is that all who implement IB also Implement IA, but not all IA implement IB.
I could work around it by using multiple inheritance, but extending the interface makes more sense.

Hi Siveon,

Not sure that I correctly understand your idea, but you cannot use virtual inheritance with classes derived from UObject (because it lead to some problems with Cast functions and compiler generate error).

In addition, UE4 has interfaces that allow you to trigger events in blueprints. Check this link for more info.

Feel free to post any additional questions here.

Hope it helps!