Quote Originally Posted by pinoywebdev View Post
"...nor can you return a C++ object. " by this you mean, C++ DLL called from VB should only return plain data types and not object types?
Yes, that's right. Internally within the C++ DLL, you can use a class (or classes) to implement the functionality, but you can only export functions.

You can export a C++ class; however, consuming the class in another C++ application is very restrictive. Typically, you need to build both the exe and the dll with the same compiler. Even a different version of compiler can break you. This is because of the C++ name mangling that occurs during the export process. Since there isn't any standard a new version of compiler could produce different name mangling. It's the same for different compiler vendors.