C++ 常见坑点/踩过的坑

C++ 的易踩坑点

随时补充

  1. STL不能边循环边erase()
//自己写的求交集RE了
for (set <int> ::iterator it = s.begin(); it != s.end(); it++)
    if (*it == x)
        s.erase(it);    //RE

解决办法:用vector记录要删除的元素,新开一个对vector的循环,操作set即可。

  1. 使用unique()/lower_bound()时的重定义操作符<要满足严格小于(若相等要返回false)。
  2. priority_queue大根堆,sort升序排。

欢迎补充

猜你喜欢

转载自www.cnblogs.com/Decisive/p/11854213.html