vector at用法
时间: 2023-10-14 08:28:03 浏览: 155
`vector` 是 C++ STL 中的一个容器,可以用来存储一系列的元素。`vector` 中的每个元素都有一个对应的索引,可以使用 `vector` 的 `at` 函数来访问指定索引位置的元素。
`at` 函数的语法如下:
```c++
vector_name.at(index);
```
其中,`vector_name` 是 `vector` 的名称,`index` 是要访问的元素索引。需要注意的是,如果指定的索引超出了 `vector` 的范围,`at` 函数会抛出一个 `out_of_range` 异常。
下面是一个示例代码:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> v = {1, 2, 3, 4, 5};
cout << "v[2] = " << v[2] << endl; // 使用下标访问元素
cout << "v.at(2) = " << v.at(2) << endl; // 使用 at 函数访问元素
// 尝试访问超出范围的元素索引
try {
cout << "v.at(10) = " << v.at(10) << endl;
} catch (const out_of_range& e) {
cerr << "Out of range error: " << e.what() << endl;
}
return 0;
}
```
输出结果为:
```
v[2] = 3
v.at(2) = 3
Out of range error: vector::_M_range_check: __n (which is 10) >= this->size() (which is 5)
```
可以看到,使用 `at` 函数访问元素时,如果指定的索引超出了 `vector` 的范围,会抛出一个 `out_of_range` 异常。
阅读全文