读书人

stl中联系关系容器直接卡死程序

发布时间: 2013-09-28 10:01:20 作者: rapoo

stl中关联容器直接卡死程序

程序直接卡死,不会core,此问题存在于所有map和set中,vector和list会直接core掉


#include <iostream>
#include <set>
#include <list>
#include <vector>
#include <map>


int main()
{
std::set<int> combine_op_set;
std::cout << "test start" << std::endl;


combine_op_set.erase(combine_op_set.begin());


std::cout << "test end" << std::endl;


return 0;
}


备注:虽然在一定层面上这是程序员应该注意的,但是库的封装也应该有一定的容错机制才好,更何况我觉得这里只是一个if的事情,不会对效率有任何影响,真搞不懂为什么库没有封装这个逻辑。

最重要的,这是一个对象的function,而不是一个算法接口,所以做得事情应该更多才是,如果在对象的封装上还是简单的以单function的理念,那么就是有冲突的,不纯粹。


读书人网 >编程

热点推荐