A 3rd-party DLL I'm compiling contains the following class (in abbreviated form):-
The typedef'd symbol doesn't get exported for some reason. Is that fixable?Code:class __declspec(dllexport) ChordProvider { public: ChordProvider () {} // <--- This gets exported okay typedef std::map<std::string,Intervals> ChordNameToIntervals; static ChordNameToIntervals tet12_chords; // <--- tet12_chords doesn't get exported };
[Edit...] I tried a few searches via Google / StackOverflow etc and the consensus seems to be that typedefs are compile time objects which should be accessible from outside the DLL without needing to get exported - but I must admit, that's not what I'm seeing here
[Update...] Adding this line to the corresponding cpp file fixed the problem
Code:__declspec(dllexport) ChordProvider::ChordNameToIntervals ChordProvider::tet12_chords;





Reply With Quote