set两问(stl高手请进)
1.如何在遍历set的过程中对set进行插入或者删除操作?
我定义了一个int型的set,插入数据后要对set中的数据进行删除,如删除set中的奇数,我的代码如下:
for(set<int>::iterator i = int_set.begin(); i != int_set.end(); i++)
if(*i/2)
int_set.erase(i);
但是产生内存读写错误,是不是因为erase操作导致int_set.end()返回值变化了?如何修改代码使得在遍历set的过程删除不需要的元素?
2.对两个整形set做与,或,非等布尔运算,stl是否有直接操作的函数?