一、 string
assign(char*);
替换整个串。
assign(char*, int n);
用新串前 n个字符串替换原串。
例子:
#include <iostream>
#include <string>
using namespace std;
void main()
{
string str = "abc";
str.assign("d");
cout<<str<<endl;//d
str.assign("def", 2);
cout<<str<<endl;//de
}
二、vector
assign(vector.begin(), vector.end());// 拷贝整个vector
assign(int count, const T t);//用某一类型 t填充该vecotr,size = count
#include <iostream>
#include <string>
#include <vector>
using namespace std;
void main()
{
vector<int> vec1;
for(int i=0; i< 10; i++)
{
vec1.push_back(i+1);
}
vector<int> vec2;
vec2.assign(vec1.begin(), vec1.end());
vector<int>::iterator iter;
cout<<"vec2:";
for(iter = vec2.begin(); iter != vec2.end(); ++iter)
{
cout<<*iter<<" ";
}
//vec2:1 2 3 4 5 6 7 8 9 10
vector<int> vec3;
vec3.assign(10, 4);
cout<<"vec3:";
for(iter = vec3.begin(); iter != vec3.end(); ++iter)
{
cout<<*iter<<" ";
}
//vec3:4 4 4 4 4 4 4 4 4 4
}