我不知道如何通过以下方式将自定义排序行为传递给std::map
:
Constructor(const std::function<bool(const Obj&, const Obj&)>& ac_xNewComparator)
: mNewMap(xNewComparator(/*...???....*/)) {}
我怎样才能将比较器传递给地图?
答案 0 :(得分:2)
class Test
{
public:
Test(const std::function<bool (int x, const std::string& str)>& comparator)
: m_map(comparator)
{
}
std::map<int, std::string, std::function<bool (int x, const std::string& str)> > m_map;
};