自定义排序以通过构造函数进行映射

时间:2013-01-23 11:38:51

标签: c++ stdmap std-function

我不知道如何通过以下方式将自定义排序行为传递给std::map

Constructor(const std::function<bool(const Obj&, const Obj&)>& ac_xNewComparator)
: mNewMap(xNewComparator(/*...???....*/)) {}

我怎样才能将比较器传递给地图?

1 个答案:

答案 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;

};