Home C&C++函数库 c++ 语法 程序源码 Linux C库

std::

unordered_map::end

公众成员函数  <unordered_map>
container iterator (1)
      iterator end() noexcept;
const_iterator end() const noexcept;
bucket iterator (2)
      local_iterator end (size_type n);
const_local_iterator end (size_type n) const;

返回一个指向unordered_map容器(1)或其中一个桶(2)末尾元素的下一个元素的迭代器

end返回的迭代器不指向任何元素,而是指向unordered_map容器中最后一个元素后面的位置(它的结束位置)。 因此,返回值不应被解引用------它通常用于描述一个范围的开放结束,例如[begin,end)

注意,unordered_map对象不保证其元素是如何排序的。 但是,在任何情况下,从它的开始到结束的范围覆盖了容器(或桶)中的所有元素,直到失效。

☲  参数


n
桶数。这个值应该小于bucket_count。

它是一个可选参数,用于改变成员函数的行为:如果设置了该参数,则迭代器检索到的是桶的end,否则则指向容器的end

☉  返回值



指向容器(1)或桶(2)end元素的迭代器。

所有返回类型(iterator、const_iterator、local_iterator和const_local_iterator)都是成员类型。 在unordered_map类模板中,这些是前向迭代器类型。

局部迭代器与非局部迭代器属于同一类。它们的value_type、difference_type、 指针和引用成员类型也是相同的。但是迭代器本身并不一定是相同的类型。

☣  示例



// unordered_map::begin/end example
#include <iostream>
#include <unordered_map>

int main ()
{
  std::unordered_map<std::string,std::string> mymap;
  mymap = {{"Australia","Canberra"},{"U.S.","Washington"},{"France","Paris"}};

  std::cout << "mymap contains:";
  for ( auto it = mymap.begin(); it != mymap.end(); ++it )
    std::cout << " " << it->first << ":" << it->second;
  std::cout << std::endl;

  std::cout << "mymap's buckets contain:\n";
  for ( unsigned i = 0; i < mymap.bucket_count(); ++i) {
    std::cout << "bucket #" << i << " contains:";
    for ( auto local_it = mymap.begin(i); local_it!= mymap.end(i); ++local_it )
      std::cout << " " << local_it->first << ":" << local_it->second;
    std::cout << std::endl;
  }

  return 0;
}

输出:
mymap contains: France:Paris Australia:Canberra U.S.:Washington
mymap's buckets contain:
bucket #0 contains:
bucket #1 contains:
bucket #2 contains:
bucket #3 contains:
bucket #4 contains:
bucket #5 contains: France:Paris
bucket #6 contains:
bucket #7 contains: Australia:Canberra
bucket #8 contains: U.S.:Washington
bucket #9 contains:
bucket #10 contains:

✥ 复杂度



常量

☣ 迭代器的有效性



不变

🍄  另请参阅



unordered_map::begin 返回一个指向unordered_map容器或其中一个桶开头的迭代器(公众成员函数)
unordered_map::find 获取元素的迭代器(公众成员函数)
unordered_map::cend 返回一个指向unordered_map容器或其中一个桶开头的常量迭代器(公众成员函数)

联系我们 免责声明 关于CandCplus 网站地图