小编Nar*_*ren的帖子

如何使用 remove_if 从向量中删除元素

我有以下代码:我在删除函数中遇到编译错误。我想从向量中删除元素与xinput 的值匹配的元素x

class A
{
   int x,y;
   public:
   init(int a, int b)
   {
     x = a; y= b;
   }
   int getX(){return x;}
}
class B
{
   public:
   void add (int a, int b)
   {
     A a1;
     a1.init(a,b);
     MyVector.push_back(a1);
   }
   void remove(int x)
   {
      MyVector.erase(remove_if(MyVector.begin(), MyVector.end(),                                         
                  [&vec](int x){return (vec.getX() == x);}), MyVector.end());

   }
   vector<A> MyVector;
}
Run Code Online (Sandbox Code Playgroud)

c++ algorithm iterator stl vector

1
推荐指数
1
解决办法
78
查看次数

标签 统计

algorithm ×1

c++ ×1

iterator ×1

stl ×1

vector ×1