在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。