将函子构造为lambda表达

时间:2019-03-30 11:01:39

标签: c++

我想请您提供帮助以简化和泛化此代码。我想用lambda代替这个结构函子。


    struct sort_by_length { 
        bool operator()(const std::string& first, const std::string& second) {
            return first.length() > second.length();
        }
    };


    sort_by_length functor;


    std::sort(my_vector.begin(), my_vector.end(), functor);

这是有效的代码段,如果将其应用于std :: vector,则会根据各个字符串的长度进行排序。

我想看到lambda的实现,因为我是lambda的新手,而我的尝试失败了,这将是lambda的有用示例-至少对我而言。

下一步,如果您真的想挑战,我想为每个容器提供它的模板版本。

0 个答案:

没有答案