vector的at函数
时间: 2023-12-09 22:05:23 浏览: 67
vector的at函数是用来返回指定索引位置的元素的,并且可以进行边界检查。如果索引位置超出了vector的范围,则会抛出一个std::out_of_range的异常。
例如,假设我们有一个vector v,我们可以使用以下代码来获取它的第一个元素:
```
int x = v.at(0);
```
如果vector为空,则会抛出一个std::out_of_range异常。如果我们想要在不进行边界检查的情况下获取元素,则可以使用vector的[]运算符。例如,以下代码也可以获取vector的第一个元素:
```
int x = v[0];
```
但是,如果vector为空或者索引超出了vector的范围,则会导致未定义行为。因此,建议在需要进行边界检查时使用vector的at函数。
相关问题
c++ vector at函数
C++中的vector是一个动态数组,可以通过at函数访问指定位置的元素。at函数的语法如下:
```c++
reference at (size_type n);
const_reference at (size_type n) const;
```
其中,第一个版本返回一个引用,可以用于修改元素值;第二个版本返回一个常量引用,不能用于修改元素值。如果n超出了vector的范围,则会抛出一个out_of_range异常。
例如,以下代码创建了一个包含5个整数的vector,并输出第3个元素的值:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v = {1, 2, 3, 4, 5};
cout << v.at(2) << endl; // 输出3
return 0;
}
```
c++中vector的at函数
在C++中,vector的at()函数用于访问指定位置的元素,并进行边界检查。如果索引超出了vector的范围,则会抛出一个out_of_range异常。at()函数的语法如下:
```c++
reference at (size_type n);
const_reference at (size_type n) const;
```
其中,n是要访问的元素的索引,reference是元素的引用类型,const_reference是元素的常量引用类型。下面是一个使用at()函数的例子:
```c++
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> vec = {1, 2, 3, 4, 5};
try {
int n = vec.at(10);
cout << "The value at index 10 is: " << n << endl;
} catch (const out_of_range& e) {
cerr << "Out of Range error: " << e.what() << endl;
}
return 0;
}
```
上述代码中,我们尝试访问索引为10的元素,但是vector中只有5个元素,因此会抛出一个out_of_range异常。我们使用try-catch语句来捕获这个异常并输出错误信息。
阅读全文