В основной программе и библиотеке описана структура типа:
struct MyStruct{
std::string m_string;
}
библиотека экспортирует одну функцию:
MyStruct GetStruct()
{
MyStruct a;
a.m_string="qwerty";
return a;
}
Основная прога грузит эту библиотеку динамически и вызывает ее функцию GetStruct.
Вызывается нормально, в поле m_string лежит "qwerty" как и должно быть.
Проблема появляется, когда пытаешься изменить m_string, в режиме отладки пишет:
"Invalid Address specified to RtlFreeHeap( 003E0000, 004A4C74 )"
Это, как я понял, связано со способом компоновки CRT (статически или динамически).
Что следует предпринять что бы забороть данный косяк? Перерыл пол инета, но внятного ответа не нашел.
Компилятор mingw 4.4
библиотеки Qt не используются