在C++中,assign函数用于将容器中的元素替换为指定范围内的元素。它通常用于清空容器并将新元素添加到容器中,可以用于vector、list、deque等容器。
例如,对于vector容器,可以使用assign函数将新元素赋值给容器:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec;
vec.assign({1, 2, 3, 4, 5});
for (int i : vec) {
std::cout << i << " ";
}
return 0;
}
在上面的例子中,assign函数将容器vec的元素替换为{1, 2, 3, 4, 5},并输出结果为:1 2 3 4 5。
assign函数还可以接受两个迭代器参数,用于指定要复制的元素范围。例如:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
std::vector<int> new_vec = {6, 7, 8};
vec.assign(new_vec.begin(), new_vec.end());
for (int i : vec) {
std::cout << i << " ";
}
return 0;
}
在这个例子中,assign函数将容器vec的元素替换为new_vec的元素{6, 7, 8},并输出结果为:6 7 8。