- 论坛徽章:
- 0
|
我在向一个map容器中插入第二个键值对时发生失败程序报段错误,而插入第一个键值对是正常的
gdb跟踪时显示以下信息
这个map的定义如下 map<int,RECORD_STRUCT>,RECORD_STRUCT是一个结构体
- Program received signal SIGSEGV, Segmentation fault.
- 0x000000000040ecac in std::less<int>::operator() (this=0x7fbffff7f2, __x=@0x7fbffd6030, __y=@0x5195a00000001c) at stl_function.h:227
- 227 { return __x < __y; }
- (gdb) where
- #0 0x000000000040ecac in std::less<int>::operator() (this=0x7fbffff7f2, __x=@0x7fbffd6030, __y=@0x5195a00000001c) at stl_function.h:227
- #1 0x000000000040debd in std::_Rb_tree<int, std::pair<int const, RECORD_STRUCT>, std::_Select1st<std::pair<int const, RECORD_STRUCT> >, std::less<int>, std::allocator<std::pair<int const, RECORD_STRUCT> > >::insert_unique (this=0x7fbffff7f2, __v=@0x7fbffd6030) at stl_tree.h:869
- #2 0x000000000040cf83 in std::map<int, RECORD_STRUCT, std::less<int>, std::allocator<std::pair<int const, RECORD_STRUCT> > >::insert (
- this=0x7fbffff7f2, __x=@0x7fbffd6030) at stl_map.h:360
- #3 0x000000000040a4b9 in CFEESND_FIELD::ReadAsnFile (this=0x7fbfffa620) at tablesndfield.cpp:291
- #4 0x0000000000410dad in main (argc=2, argv=0x7fbffff938) at main.cpp:44
复制代码 |
|