[cfe-dev] COM ABI support?

Nico Rieck nico.rieck at gmail.com
Thu Jul 11 04:26:27 PDT 2013


On 11.07.2013 04:10, Stephen Lin wrote:
> Correct me if I'm wrong, but, as I understand it (my last usage of COM
> was maybe 10 years ago...), COM interfaces are a language-independent
> ABI that happen to be implementable using C++ virtual inheritance
> using MSVC.

COM uses pure abstract base classes, but *not* virtual inheritance. 
Which makes for a simpler vtable layout. And is the reason why you have 
to be careful returning the correct pointer in IUnknown::QueryInterface 
(COM's dynamic_cast on steroids) when inheriting from multiple interfaces.

-Nico



More information about the cfe-dev mailing list