当我想要达到STL lib set :: find或empty()时......我得到了核心文件。
我正在使用gcc版本4.1.2 20070115(预发行版)(SUSE Linux),请参阅堆栈流程:
#0 0x00002aaaae7caf2a in _STL::_Rb_tree<unsigned int, unsigned int,
_STL::_Identity<unsigned int>, _STL::less<unsigned int>,
_STL::allocator<unsigned int> >::empty (this=0x8)
at /home/irish/nagrun/add-ons/include/stlport/stl/_tree.h:370
#1 0x00002aaaae7caf4f in _STL::set<unsigned int, _STL::less<unsigned int>, _STL::allocator<unsigned int> >::empty (this=0x8)
at /home/irish/nagrun/add-ons/include/stlport/stl/_set.h:129
#2 0x00002aaaae7ca5d1 in User::deleteSessionID (this=0x0, sessionID=4143972353)
at /home/irish/nagrun/NIG_SRC/PresenceEx_V100R001C41B010/Extends/UserManager/User.cpp:60
这怎么可能? 我可以使用迭代器插入到set中并遍历它。
答案 0 :(得分:0)
评论中你是对的:我一直通过空指针调用User
上的函数。
我没有意识到这一点,因为堆栈跟踪在标准库函数的深处开始,让我相信问题出在find
,而不是我的调用方式。