代码改变世界

gdb map.insert方法运行异常:program received signal segmentation fault

2013-08-14 09:19  playerboy  阅读(440)  评论(0编辑  收藏  举报

     昨天被这个问题搞得糊涂了,一直不知道怎么处理了。之前运行正常的代码,因为项目需要,将原来的stl 的list改为map,编译正常,运行到此处的时候会发生异常,报告如题。怀疑自己使用map的inster或者map[i] = "";方法有问题,专门又试了下,发现都正常啊,那就从现在的代码上找问题吧。我发现了我在初始化结构体的时候,使用了memset,这个方法把map中的两个指针_left和_right指针都初始化为0了,而不使用memset的时候,这两个指针都是有指向的地址的。对于vector、list等都没有这个问题。所以把结构体的整体初始化memset改为单个变量的初始化就行了。噢耶。