【发布时间】:2025-11-28 01:05:01
【问题描述】:
std::map<std::string, Obj> myMap;
std::set<std::string> mySet;
我想从myMap 中删除那些不在mySet 中的键。
我该怎么做?我找到了std::remove_if算法,但是这里好像不适用。
【问题讨论】:
-
您能否详细说明为什么
remove_if不适用? -
@juanchopanza:
remove_if需要重新排列给定的序列,这是地图无法做到的。 -
@KerrekSB 我希望 OP 将这类信息放在问题中。没关系。
-
@Kerrek @juanchopanza SB 此外,我无法编译它。我怀疑
remove_if不能应用于std::map。
标签: c++ c++11 stdmap stl-algorithm