Is there a runtime performance penalty when using interfaces (abstract base classes) in C++?
As for any class that contains a virtual function, a vtable is used. Obviously, invoking a method through a dispatching mechanism like a vtable is slower than a direct call, but in most cases you can live with that.