
ltdl do it. On win32 I'm using ltdl even the it considers my DLLs to NOT be a libtool archive, and it's making the symbol name transformation mess up. If I do it myself, I can avoid this.
test10-modvirtual Create an interface class in modules.h called DeviceInterface. Each module creates a child class of DeviceInterface, and implements its methods. This test loads the modules, calls the module's module_init() which instantiates a subclass of DeviceInterface and returns a pointer to it. Then main can call operate on this object using the DeviceInterface class.