Generally C++ dlls developed by two different compilers are not compatible to each other.
one simple solutions is to create the object in a factory method.
Your factory method should be exported with
extern "C"
This will remove your name mangling hurdles and you can load the library.