是否有人指出何时可能发生以下seg故障,如下所示: - 堆腐败 - 内存泄漏 - 字符串的STL实现中的缺陷
0xf0f1d672 in std::__default_alloc_template<true, 0>::allocate(unsigned int) () from /usr/lib/libstdc++.so.5
为了给出一些上下文,堆栈跟踪如下:
#0 0xf0f1d672 in std::__default_alloc_template<true, 0>::allocate(unsigned int) () from /usr/lib/libstdc++.so.5
#1 0xf10bdae1 in std::__simple_alloc<std::_Rb_tree_node<std::pair<std::string const, Calculator*> >, std::__default_alloc_template<true, 0> >::allocate(unsigned int) () from /export/work/install/lib/Plugin.so
答案 0 :(得分:2)
从堆栈跟踪看来,您正在创建一个动态加载的.so
插件。如果插件接口使用堆分配,则通常必须确保在插件API边界的两侧使用相同的运行时库实例。