当我想达到STL库set::find或empty()…我得到了core文件
我使用的是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
这怎么可能?
你在评论中是正确的:我一直在通过空指针调用User
上的函数。
我没有意识到这一点,因为堆栈跟踪从标准库函数的深处开始,这使我相信问题出在find
上,而不是我如何调用它。