A C++ data type can NOT be transferred from LabVIEW to a DLL and back! Period!
The main reason is that C++ object classes are not standardized in terms of memory layout. Each compiler tends to do its own memory layout. This also means that you can generally not call a C++ DLL created in compiler A by a program created in compiler B, unless you restrict the interface between the two to pure C datatypes.