C++ 迭代器库 - 开始


描述

它返回一个指向序列中第一个元素的迭代器。

宣言

以下是 std::begin 的声明。

C++11

template <class Container>
  auto begin (Container& cont) -> decltype (cont.begin());
template <class Container>
  auto begin (const Container& cont) -> decltype (cont.begin());

参数

  • cont - 它是定义了成员 begin 的类类型的对象。

  • arr - 这是一个数组。

返回值

它由 cont.begin() 返回。

例外情况

如果对迭代器执行的任何算术运算都会抛出异常。

时间复杂度

随机访问迭代器的常量。

例子

以下示例显示了 std::begin 的用法。

#include <iostream>     
#include <vector>       

int main () {
   int foo[] = {1,2,3,4,5};
   std::vector<int> bar;
  
   for (auto it = std::begin(foo); it!=std::end(foo); ++it)
      bar.push_back(*it);
  
   std::cout << "bar contains:";
   for (auto it = std::begin(bar); it!=std::end(bar); ++it)
      std::cout << ' ' << *it;
   std::cout << '\n';

   return 0;
}

让我们编译并运行上面的程序,这将产生以下结果 -

bar contains: 1 2 3 4 5
迭代器.htm