basic_string::append
向string 的后面加字符或字符串。(比+=, push_back 更灵活)
(1)向string 的后面加C-string
basic_string& append( const value_type*_Ptr);
string s ( "Hello " ); // s=”Hello”
const char *c = "Out There ";
s.append ( c );// s=”Hello
Out There”
(2)向string 的后面加C-string 的一部分
basic_string& append( const value_type*_Ptr,
size_type_Count);
string s ( "Hello " ); // s=”Hello”
const char *c = "Out There ";
s.append ( c , 3 );// s=”Hello
Out”
(3)向string 的后面加string(有两种方法)
basic_string& append( const basic_string&_Str);
string s1 ( "Hello " ), s2 ( "Wide " ), s3( "World " );
s1.append ( s2 );// s1=”Hello
Wide”
s1 += s3;// s1=”Hello
Wide World”
(4)向string 的后面加string 的一部分 ---A
basic_string& append( const basic_string&_Str,
size_type_Off,
size_type_Count);
string s1 ( "Hello " ), s2 ( "Wide World " );
s1.append ( s2 , 5 , 5 );// s1=”Hello
World”
(5)向string 的后面加string 的一部分 ---B
template<class InputIterator> basic_string& append(
InputIterator_First, InputIterator_Last);
string str1f ( "Hello " ), str2f ( "Wide World" );
str1f.append ( str2f.begin ( ) + 5 , str2f.end ( ) );
// s1=”Hello World”
(6)向string 的后面加多个字符
basic_string& append( size_type_Count,
value_type_Ch);
string str1e ( "Hello " );
str1e.append ( 4 , '!' );// s1=”Hello
!!!!”
basic_string::assign
给string 赋值。 (比“=”更灵活)
(1)向string 赋C-string
basic_string& assign( const value_type*_Ptr);
string s;
const char *c = "Out There";
s.assign ( c );// s=”Out
There”
(2)向string 赋C-string 的一部分
basic_string& assign( const value_type*_Ptr,
size_type_Count);
string s;
const char *c = "Out There";
s.assign ( c , 3 );// s=”Out”
(3)向string 赋string(有两种方法)
basic_string& assign( const basic_string&_Str);
string s1 ( "Hello" ), s2 ( "Wide" ), s3( "World" );
s1.assign ( s2 );// s1=”Wide”
s1 = s3;// s1=”World”
(4)向string 赋string 的一部分 ---A
basic_string& assign( const basic_string&_Str,
size_typeoff,
size_type_Count);
string s1 ( "Hello " ), s2 ( "Wide World " );
s1.assign ( s2 , 5 , 5 );// s1=”Hello
World”
(5)向string 赋string 的一部分 ---B
template<class InIt> basic_string& assign(
InputIterator_First,
InputIterator_Last);
string str1f ( "Hello " ), str2f ( "Wide World" );
str1f.assign ( str2f.begin ( ) + 5 , str2f.end ( ) );// s1=”Wide
World”
(6)向string 赋 多个字符
basic_string& assign( size_type_Count,
value_type_Ch);
string str1e ( "Hello " );
str1e.assign ( 4 , '!' );// s1=”!!!!”
本文详细介绍了C++标准库中string类的append和assign方法的多种使用方式,包括如何向string对象追加或赋值C-string、string对象、C-string的部分内容及特定字符等。

被折叠的 条评论
为什么被折叠?



