C++ vector::begin() 函数



C++ `vector::begin()` 函数用于获取指向向量第一个元素的迭代器。`begin()` 函数返回指向容器初始元素的双向迭代器。`begin()` 函数的时间复杂度为常数。

向量是表示大小可变数组的顺序容器。因此,我们不需要在声明时声明其长度,可以在程序的后期调整它。在 C++ 中,向量是无序的。迭代器使访问和遍历向量元素变得简单。

语法

以下是 C++ `vector::begin()` 函数的语法:

iterator begin() noexcept;
const_iterator begin() const noexcept;

参数

它不包含任何参数。

示例 1

让我们考虑以下示例,我们将使用 `begin()` 函数并检索输出。

#include <iostream>
#include<vector>
using namespace std;

int main(){
   vector<int> tutorial{12,23,34,45};
   vector<int>::iterator tp;
   tp=tutorial.begin()+2;
   cout<<*tp;
   return 0;
}

输出

当我们编译并运行上述程序时,将产生以下结果:

34

示例 2

在下面的示例中,我们将使用字符串应用 `begin()` 函数并检索输出。

#include <iostream>
#include <string>
#include <vector>
using namespace std;

int main(){
   vector<string> tutorial{ "TutorialsPoint", "TP", "Tutorix" };
   for (auto it = tutorial.begin(); it != tutorial.end(); ++it)
      cout << ' ' << *it;
   return 0;
}

输出

运行上述程序后,将产生以下结果:

TutorialsPoint TP Tutorix

示例 3

以下是另一个场景,用于检查 `begin()` 函数的用法。

#include <iostream>
#include <vector>
using namespace std;

int main(){
   vector<int> tutorial {2,4,6,8,10};
   vector<int>::iterator tp;
   tp = tutorial.begin();
   cout << "tutorial[0] = " << *tp << endl;
   tp = tutorial.begin() + 3;
   cout << "tutorial[3] = " << *tp;
   return 0;
}

输出

运行上述程序后,将产生以下结果:

tutorial[0] = 2
tutorial[3] = 8
广告