Summary of member functions for string of C + +

Source: Internet
Author: User

constructor of the String class:

String (const char *s); Initialize with C string s
string (int N,char c); Initialize with n characters c
In addition, the string class supports both the default constructor and the copy constructor, such as String s1;string s2= "Hello", which is the correct notation. A Length_error exception is thrown when a constructed string is too long to be expressed

Character manipulation of the string class:

const char &operator[] (int n) const;
const char &at (int n) const;
Char &operator[] (int n);
char &at (int n);
The above function operator[] and at () all return the position of the nth character in the current string, but the at function provides a scope check that throws a Out_of_range exception when it crosses the border, and the subscript operator [] does not provide check access.
const char *data () const; Returns a non-null-terminated C- character array
const char *C_STR () const; Returns a null-terminated C string
int copy (char *s, int n, int pos = 0) const; Copies the n characters starting at Pos in the current string to a character array starting with S, returning the number of actual copies

Character description of String:

int capacity () const; Returns the current capacity (that is, the number of elements in a string that do not have to increase memory)
int max_size () const; Returns the length of the largest string that can be stored in a string object
int size () const; Returns the size of the current string
int length () const; Returns the length of the current string
BOOL empty () const; Whether the current string is empty
void Resize (int len,char c); Set the current size of the string to Len and fill in the insufficient portion with the character C

Input and output operations of the String class:

The string class overloaded operator operator>> is used for input, and the same overloaded operator operator<< is used for output operations.
The function getline (IStream &in,string &s) is used to read the string from the input stream in to s, separated by a newline character ' \ n '.

Assignment of String:

String &operator= (const string &s); Assigns the string s to the current string
String &assign (const char *s); Assign a value to the C type string s
String &assign (const char *s,int n); n characters assigned value starting with C string s
String &assign (const string &s); Assigns the string s to the current string
String &assign (int n,char c); Assigns a value to the current string with n characters c
String &assign (const string &s,int start,int N); Assigned n characters from start in string s to the current string
String &assign (Const_iterator first,const_itertor last); Assigns the part between first and last iterators to a string

Connection to String:

String &operator+= (const string &s); Concatenate the string s to the end of the current string
String &append (const char *s); Concatenate the C-type string s to the end of the current string
String &append (const char *s,int n); Connect prompt the first n characters of type C string s to the end of the current string
String &append (const string &s); With operator+= ()
String &append (const string &s,int pos,int N); Connect prompt the n characters from the POS in the string s to the end of the current string
String &append (int n,char c); Adds n characters to the end of the current string C
String &append (Const_iterator first,const_iterator last); Connect the part between the iterator first and last to the end of the current string

Comparison of String:

BOOL operator== (const string &s1,const string &s2) const; Comparison of two strings for equality
The operators ">", "<", ">=", "<=", "! =" are overloaded for string comparisons;
int compare (const string &s) const; Compare the size of the current string and s
int compare (int pos, int n,const string &s) const; Compares the size of a string of n characters starting with the current string from POS to s
int compare (int pos, int n,const string &s,int pos2,int n2) const; Compares the size of a string of n characters starting at the beginning of the current string from Pos with N2 characters starting with Pos2 in S
int compare (const char *s) const;
int compare (int pos, int n,const char *s) const;
int compare (int pos, int n,const char *s, int pos2) const; //Compare functionReturn -1,== when returning 1,< on > returns 0

Substring of string:

String substr (int pos = 0,int n = npos) const; Returns a string of n characters starting at Pos

Exchange of String:

void Swap (string &s2); Swap the current string with the value of S2

Lookup function for String class:

int find (char c, int pos = 0) const; Find from POS startcharacterC in the position of the current string
int find (const char *s, int pos = 0) const; Find from POS startstringThe position of s in the current string
int find (const char *s, int pos, int n) const; Find from POS startstringThe position of the first n characters in the current string in S
int find (const string &s, int pos = 0) const; Find from POS startstringThe position of s in the current string
(Note: The Find function looks for success when it returns where it was, and failed to return a value of String::npos.) The string class defines NPOs as guaranteed to be greater than any valid subscript value. Typically-1)
int RFind (char c, int pos = NPOs) const; Starting from the POS and looking forward from behindcharacterThe position of C in the current string
int RFind (const string &s,int pos = NPOs) const;
int rfind (const char *s, int pos = NPOs) const; Starting from the POS and looking forward from behindstringThe position of s in the current string
int rfind (const char *s, int pos, int n = npos) const; The position of the first n characters in the string s in the current string, starting from the POS and looking forward from the back
The above RFind function finds the location where it was successfully returned, and returns the value of String::npos on failure
int find_first_of (char c, int pos = 0) const; Find from POS startcharacterc The first occurrence of the position
int find_first_of (const string &s,int pos = 0) const;
int find_first_of (const char *s, int pos = 0) const; Find from POS startstringThe position where s first appeared
int find_first_of (const char *s, int pos, int n) const; Finds the position of the character in the first n-character array of s in the current string starting from Pos. (Lookup failed to return String::npos)
int find_first_not_of (char c, int pos = 0) const;
int find_first_not_of (const char *s, int pos = 0) const;
int find_first_not_of (const char *s, int pos,int n) const;
int find_first_not_of (const string &s,int pos = 0) const; Finds the first occurrence of a character not in the string s from the current string, fails back to String::npos
int find_last_of (char c, int pos = NPOs) const;
int find_last_of (const char *s, int pos = NPOs) const;
int find_last_of (const char *s, int pos, int n = npos) const;
int find_last_of (const string &s,int pos = NPOs) const;
int find_last_not_of (char c, int pos = NPOs) const;
int find_last_not_of (const char *s, int pos = NPOs) const;
int find_last_not_of (const char *s, int pos, int n) const;
int find_last_not_of (const string &s,int pos = NPOs) const; Find_last_of and find_last_not_of are similar to find_first_of and find_first_not_of, except that they look forward from behind.

substitution function for String class:

String &replace (int p0, int n0,const char *s); Delete N0 characters starting with P0 and insert string s at P0
String &replace (int p0, int n0,const char *s, int n); Remove N0 characters starting with P0, and then insert the first n characters of the string s at P0
String &replace (int p0, int n0,const string &s); Delete N0 characters starting with P0 and insert string s at P0
String &replace (int p0, int n0,const string &s, int pos, int n); Delete N0 characters starting with P0 and then insert string s n characters from Pos at P0
String &replace (int p0, int n0,int n, char c); Remove N0 characters starting with P0, and then insert n characters at P0 c
String &replace (iterator first0, iterator last0,const char *s); Replace the section between [First0,last0] with the string s
String &replace (iterator first0, iterator last0,const char *s, int n); Replace the section between [First0,last0] with the first n characters of S
String &replace (iterator first0, iterator last0,const string &s); Replace the section between [First0,last0] with a string s
String &replace (iterator first0, iterator last0,int N, char c); Replace the section between [First0,last0] with n characters c
String &replace (iterator first0, iterator Last0,const_iterator first, const_iterator last); Replace the part between [First0,last0] with a string between [First,last]

Insert function for String class:

String &insert (int p0, const char *s);
String &insert (int p0, const char *s, int n);
String &insert (int p0,const string &s);
String &insert (int p0,const string &s, int pos, int n); First 4 functions Insert the first n characters of the POS in the string s or string s in the P0 position
String &insert (int p0, int n, char c); This function inserts n characters c at p0
Iterator insert (iterator it, char c); Insert character C at it to return the position of the post-insertion iterator
void Insert (iterator it, Const_iterator first, const_iterator last); Insert the characters between [First,last] in the IT department
void Insert (iterator it, int n, char c); Insert n characters c in it

Delete function for string class:

iterator Erase (iterator first, iterator last);                                    //deletes all characters between [First,last], returns the position of the post-delete iterator  
Iterator Erase ( Iterator it);                                                          //Remove the character that it points to, return the position of the post-  iterator,
string &erase (int pos = 0, int n = npos);    &nbs p;                              //delete the n characters starting at POS and return the modified string

The

iterator processing of the string class:  
The String class provides a forward and backward-traversed iterator iterator, which provides syntax for accessing individual characters, similar to pointer operations, and iterators do not check scopes.  
declares an iterator variable with string::iterator or String::const_iterator, and Const_iterator does not allow the content of the iteration to be changed. Common iterator functions are:  
Const_iterator begin () const; iterator begin ();                //Returns the starting position of the string  
Const_iterator end () const; iterator end ();                     //Returns the position after the last character of the string  
Const_iterator rbegin () const; iterator Rbegin ();             //returns the position of the last character of String  
Const_iterator rend () const; Iterator rend ();                  //returns the front of the first character position of string
//Rbegin and rend used to access from backward forward iterations by setting the iterator String::reverse_iterator,string::const_ Reverse_iterator implementation

To process a string stream with the StringStream class:
Implemented by defining Ostringstream, Istringstream, or StringStream, included in the <sstream> header file for example:
String input ("Hello,this is a Test");
Istringstream is (input);
String S1,s2,s3,s4;
is>>s1>>s2>>s3>>s4; S1= "Hello,this", s2= "is", s3= "a", s4= "test"
Ostringstream OS;
os<<s1<<s2<<s3<<s4;
Cout<<os.str ();

Summary of member functions for string of C + +

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.