visual c++ - Are different compilers' C++ virtual inheritance implementations incompatible? -


I have a hierarchy of such public interfaces:

  straight iSwitch Pointer received * for the second implementation interface * / virtual et switch (unsigned inter interface iid, zero ** pistence) = 0; }; Structure IFoo: Public Iswitchable {/ * Methods}; Structure term: Public ISwitchable {/ * Methods; Structure IFooBar: Public IFoo, Public IBR {/ * Methods;  

The class implementing IFooBar is placed in DLL with factory function. Client code load DLL uses the factory function to create a class installation and uses it according to the interface (they are provided as a header file)

The scheme is available in MSWC and Broland C + + The client code created by builder 6 works fine with DLL created by code.

I introduce virtual heritage in the hierarchy:

  struct IFoo: public virtual ISwitchable {/ * methods}; Structure Term: Public Virtual Isavacable Eligible {/ * Methods;  

And when in the same situation (MSVC, client code by the builder by the builder) gives an example of class class code requests, then get it with the dirty Vtable.

Brolland claims that they can load and interoperate classes created by MSVC. If so, it seems that they have a bug, as far as I know, there is nothing in the imagination of C ++ about the exact structure of VTable, so it is not expected to work for the compilers. .


Comments

Popular posts from this blog

c++ - Linux and clipboard -

What is expire header and how to achive them in ASP.NET and PHP? -

sql server - How can I determine which of my SQL 2005 statistics are unused? -