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

std::

unordered_set::cbegin

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

返回一个指向unordered_set容器或其中一个桶开头的常量迭代器

返回一个const_iterator对象,指向unordered_set容器(1)或其中一个桶(2)中的第一个元素。

const_iterator是指向const容的迭代器。这个迭代器可以递增或递减(除非它本身也是const), 但不能用来修改它所指向的内容。

☲  参数


n
桶数。这个值应该小于bucket_count
它是一个可选参数,用于改变成员函数的行为:如果设置了, 则迭代器检索到的是桶的第一个元素,否则则指向容器的第一个元素。
size_type是一种无符号整型。

☉  返回值



指向容器(1)或桶(2)中的第一个元素的const_iterator对象。

const_iteratorconst_local_iterator都是成员类型。在unordered_set类模板中,这些是前向迭代器类型。

它们可能都是相同迭代器类型的别名。

☣  示例



// unordered_set::cbegin/cend example
#include <iostream>
#include <string>
#include <unordered_set>

int main ()
{
  std::unordered_set<std::string> myset =
  {"Mercury","Venus","Earth","Mars","Jupiter","Saturn","Uranus","Neptune"};

  std::cout << "myset contains:";
  for ( auto it = myset.cbegin(); it != myset.cend(); ++it )
    std::cout << " " << *it;    // cannot modify *it
  std::cout << std::endl;

  std::cout << "myset's buckets contain:\n";
  for ( unsigned i = 0; i < myset.bucket_count(); ++i) {
    std::cout << "bucket #" << i << " contains:";
    for ( auto local_it = myset.cbegin(i); local_it!= myset.cend(i); ++local_it )
      std::cout << " " << *local_it;
    std::cout << std::endl;
  }

  return 0;
}

输出:
myset contains: Venus Jupiter Neptune Mercury Earth Uranus Saturn Mars
myset's buckets contain:
bucket #0 contains:
bucket #1 contains: Venus
bucket #2 contains: Jupiter
bucket #3 contains:
bucket #4 contains: Neptune Mercury
bucket #5 contains:
bucket #6 contains: Earth
bucket #7 contains: Uranus Saturn
bucket #8 contains: Mars
bucket #9 contains:
bucket #10 contains:

✥ 复杂度



常量

☣ 迭代器的有效性



不变

🍄  另请参阅



unordered_set::find 获取元素的迭代器(公众成员函数)
unordered_set::end 返回一个指向unordered_set容器或其中一个桶末尾元素的下一个元素的迭代器(公众成员函数)
unordered_set::cbegin 返回一个指向unordered_set容器或其中一个桶开头的常量迭代器(公众成员函数)

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