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
_
type
off
,
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=
”
!!!!
”