std::multimap<Key,T,Compare,Allocator>::end, std::multimap<Key,T,Compare,Allocator>::cend
From cppreference.com
 
 
 
 
 
 C++ 
 Feature test macros (C++20)
 Concepts library (C++20)
 Metaprogramming library (C++11)
 Ranges library (C++20)
 Filesystem library (C++17)
 Concurrency support library (C++11)
 Execution control library (C++26)
Containers library 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
(C++17)
(C++11)
(C++26)
(C++26)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++23)
(C++23)
(C++23)
(C++23)
(C++20)
(C++23)
 Tables
std::multimap 
 
 
 
 
 
 
 
 
 
 
 
 
 
  
 
(C++11)
multimap::endmultimap::cend
(C++11)
(C++11)
(C++17)
(C++23)
(C++11)
(C++11)
(C++17)
(C++20)
(until C++20)(until C++20)(until C++20)(until C++20)(until C++20)
 Deduction guides (C++17)
iterator end();
 (1)
 (noexcept since C++11) (constexpr since C++26)
const_iterator end() const;
 (2)
 (noexcept since C++11) (constexpr since C++26)
const_iterator cend() const noexcept;
 (3)
 (since C++11) (constexpr since C++26)
Returns an iterator past the last element of *this.
This returned iterator only acts as a sentinel. It is not guaranteed to be dereferenceable.
Contents
[edit] Return value
Iterator past the last element.
[edit] Complexity
Constant.
Notes
libc++ backports cend() to C++98 mode.
[edit] Example
Run this code
#include <algorithm> #include <cassert> #include <cstddef> #include <iostream> #include <map> #include <string> int main() { auto show_node = [](const auto& node, char ending = '\n') { std::cout << "{ " << node.first << ", " << node.second << " }" << ending; }; std::multimap <std::size_t, std::string > mmap; assert (mmap.begin() == mmap.end()); // OK assert (mmap.cbegin() == mmap.cend()); // OK mmap.insert({ sizeof(long), "LONG" }); show_node(*(mmap.cbegin())); assert (mmap.begin() != mmap.end()); // OK assert (mmap.cbegin() != mmap.cend()); // OK mmap.begin()->second = "long"; show_node(*(mmap.cbegin())); mmap.insert({ sizeof(int), "int" }); show_node(*mmap.cbegin()); mmap.insert({ sizeof(short), "short" }); show_node(*mmap.cbegin()); mmap.insert({ sizeof(char), "char" }); show_node(*mmap.cbegin()); mmap.insert({{ sizeof(float), "float" }, { sizeof(double), "double"}}); std::cout << "mmap = { "; std::for_each (mmap.cbegin(), mmap.cend(), [&](const auto& n) { show_node(n, ' '); }); std::cout << "};\n"; }
Possible output:
{ 8, LONG }
{ 8, long }
{ 4, int }
{ 2, short }
{ 1, char }
mmap = { { 1, char } { 2, short } { 4, int } { 4, float } { 8, long } { 8, double } };