sort是c++ STL中提供的一个函数模板,可以用来对多种类型进行排序。
默认是升序排序。它有两种使用方法:
default (1) |
template <class RandomAccessIterator> void sort (RandomAccessIterator first, RandomAccessIterator last); |
---|---|
custom (2) |
template <class RandomAccessIterator, class Compare> void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp); |
通过使用第二种方法,提供一个新的比较操作即可实现降序排序。
比如,我有一个vector<string> str_vec,如下代码即可实现:
struct greater
{
template <typename T>
bool operator() (const T &a, const T &b) {return a > b;}
};
sort(str_vec.begin(), str_vec.end(), greater()); //使用示例
时间: 2024-10-08 22:12:00