assign
Syntax:
  #include <string>
  void assign( size_type num, const char& val );
  void assign( input_iterator start, input_iterator end );
  string& assign( const string& str );
  string& assign( const char* str );
  string& assign( const char* str, size_type num );
  string& assign( const string& str, size_type index, size_type len );
  string& assign( size_type num, const char& ch );

The default assign() function gives the current string the values from start to end, or gives it num copies of val.

In addition to the normal (C++ Lists) assign() functionality that all C++ containers have, strings possess an assign() function that also allows them to:

  • assign str to the current string,
  • assign the first num characters of str to the current string,
  • assign a substring of str starting at index that is len characters long to the current string,

For example, the following code:

   string str1, str2 = "War and Peace";
   str1.assign( str2, 4, 3 );
   cout << str1 << endl;            

displays

   and          

This function will destroy the previous contents of the string.