On line 8, we create a std::array of ints that we wish to sort.
On line 10, we call the standard alrogithm std::sort, which sorts the range of elements between the given pair of iterators. We use std::begin and std::end to get the begin and end iterators for the array.
By default, std::sort uses operator< to sort the range, which arranges the elements in ascending order. It can, however, be passed a comparison function object to use when comparing elements. On lines 12–13, we pass an object of type std::greater<int>, which is a comparison function object that uses operator>. Accordingly, this sorts the array in descending order.
#include <array> #include <algorithm> #include <iterator> #include <functional> int main() { std::array<int, 5> arr = {3, 4, 1, 5, 2}; std::sort(std::begin(arr), std::end(arr)); std::sort(std::begin(arr), std::end(arr), std::greater<int>{}); }