在C++中,可以使用[]
运算符或at()
函数来修改vector中的元素值。下面是两种方法的示例:
[]
运算符:#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 修改vector中的第3个元素
vec[2] = 10;
// 输出修改后的vector
for (int i = 0; i < vec.size(); i++) {
std::cout << vec[i] << " ";
}
std::cout << std::endl;
return 0;
}
输出:
1 2 10 4 5
at()
函数:#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
// 修改vector中的第4个元素
vec.at(3) = 20;
// 输出修改后的vector
for (int i = 0; i < vec.size(); i++) {
std::cout << vec.at(i) << " ";
}
std::cout << std::endl;
return 0;
}
输出:
1 2 3 20 5
无论使用[]
运算符还是at()
函数,都可以根据索引来直接修改vector中的元素值。注意,索引从0开始。同时,使用[]
运算符时,如果访问超出vector的范围,可能会导致未定义行为,而使用at()
函数则会抛出std::out_of_range
异常。