假設我有std::vector<std::pair<int,Direction>>
。使用erase-remove_if用法
我想使用erase-remove_if成語從矢量中刪除對。
stopPoints.erase(std::remove_if(stopPoints.begin(),
stopPoints.end(),
[&](const stopPointPair stopPoint)-> bool { return stopPoint.first == 4; }));
我想刪除已。首先值設置爲4
在我的例子我對所有對:
- 4, Up
- 4, Down
- 2, Up
- 6, Up
然而,當我執行擦除的remove_if,我剩下:
- 2, Up
- 6, Up
- 6, Up
我在做什麼錯在這裏?
謝謝你,我花了一個小時在這個頭上撓了撓頭。 :) – omegasbk