我有第三方提供的静态库,它将与我的C ++(Visual Studio 120 ToolSet)项目集成,这是一个DLL。然后这个DLL在我的应用程序中使用。
//dll side
class Foo
{
// m_name is set from the value returned from 3rd party lib.
// m_name = [object in static lib].getName();
std::string getName()
{
return m_name;
}
}
//application side
void main()
{
Foo* f = new Foo();
f->getName();// application crashes when deallocating string
}
破坏std :: string时发生崩溃。我怀疑从第三方库返回的字符串是在不同的C ++运行时分配的。如何找到该第三方lib字符串的分配CRT?