# C++ multimap crend() function

The C++ multimap crend() function is used to return a constant iterator to the end of the multimap (not the last element but the past last element) in reverse order. This is similar to the element preceding the first element of the non-reversed container.

#### Note:-This is a placeholder. No element exists in this location and attempting to access is undefined behavior.

A constant iterator is an iterator that points to constant content.

None

## Return value

It returns a const_reverse_iterator to the element following the last element of the reversed container.

Constant.

No changes.

## Data races

The container is accessed.

## Exception safety

This function never throws exception.

### Example 1

Let's see the simple example for crend() function:

Output:

```c = 300
b = 400
a = 200
a = 100
```

In the above example, crend() function is used to return a constant reverse iterator to the element following the last element of the reversed container.

Because multimap stores the elements in sorted order of keys therefore, iterating over a multimap will result in above order i.e. sorted order of keys.

### Example 2

Let's see a simple example to iterate over the multimap in reverse order using while loop:

Output:

```ddd :: 11
ccc :: 13
aaa :: 12
aaa :: 10
```

In the above example, we are using while loop to const_iterate over the multimap in reverse order.

Because multimap stores the elements in sorted order of keys therefore, iterating over a multimap will result in above order i.e. sorted order of keys.

### Example 3

Let's see a simple example:

Output:

```Multimap contains following elements in reverse order:
d = 5
d = 4
b = 2
a = 3
a = 1
```

In the above example, elements of multimap returned in reverse order.

### Example 4

Let's see a simple example to sort and calculate the highest marks:

Output:

```Salary | ID
______________________
5500   |  50
3000   |  40
3000   |  30
2500   |  20
1000   |  10
Highest salary: 5500
ID is: 50
```

In the above example, a multimap emp is implemented where the ID is being stored as value and salary as key. This enables us to take advantage of the auto sorting in multimaps and lets us to identify the ID of the element with the highest salary.

Next TopicC++ Multimap    