《string::assign()用法》——xstring的六个重载函数

string::assign()——六个重载函数

语法:
//1.把字符串s赋给当前字符串
basic_string &assign( const basic_string &str );

//2.用 char *类型字符串s赋值
basic_string &assign( const char *str );

//3.用 char *字符串s开始的n个字符赋值
basic_string &assign( const char *str, size_type num );

//4.用num个字符ch为字符串赋值
basic_string &assign( size_type num, char ch );

//5.把字符串s中从start开始的n个字符赋给当前字符串
basic_string &assign( const basic_string &str, size_type index, size_type len );

//6.把first和last迭代器之间的部分赋给字符串
basic_string &assign(const_iterator first,const_itertor last)

代码:

int main()
{
	string str2;

	//1.basic_string& assign(const basic_string& _Right);把字符串s赋给当前字符串
	string str1 = "xiao ku";
	str2.assign(str1);
	cout << "1. " << str2 << endl;

	//2.string &assign(const char *s);用c类型字符串s赋值
	const char* s = "abcd";
	cout << "2. " << str2.assign(s) << endl;

	//3.string &assign(const char *s,int n);用c字符串s开始的n个字符赋值
	cout << "3. " << str2.assign(s, 2) << endl;
	
	//4.basic_string &assign( size_type num, char ch );用num个字符ch为字符串赋值
	char ch = 'i';
	cout << "4. " << str2.assign(3, ch) << endl;
	
	//5.string &assign(const string &s,int start,int n);把字符串s中从start开始的n个字符赋给当前字符串
	cout << "5. " << str2.assign(str1,0,2) << endl;

	//6.string &assign(const_iterator first,const_itertor last);把first和last迭代器之间的部分赋给字符串
	vector<string> V;
	V.push_back("xiao_ku");
	V.push_back("192.168.10.202");
	//cout << "6. " << str2.assign(V.begin(), V.end()) << endl;

执行结果:
在这里插入图片描述
第六个 6.string &assign(const_iterator first,const_itertor last);没有实现,如果有大神知道,跪求指教。

猜你喜欢

转载自blog.csdn.net/weixin_44757097/article/details/106142760