User Tools

Site Tools


cpp:strings

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
cpp:strings [2017/05/08 05:20] – [Πρόσβαση σε χαρακτήρες του αλφαριθμητικού] gthanoscpp:strings [2017/05/08 06:00] – [Μεταβολή του αλφαριθμητικού] gthanos
Line 110: Line 110:
  
 |  <code cpp>iterator begin(); |  <code cpp>iterator begin();
-const_iterator begin() const;</code>  | Επιστρέφει έναν //kiterator// που δείχνει στον πρώτο χαρακτήρα του //string//+const_iterator begin() const;</code>  | Επιστρέφει έναν //iterator// που δείχνει στον πρώτο χαρακτήρα του //string//
-|  <code cpp></code>  |   | +|  <code cpp>iterator end(); 
-|  <code cpp></code>   | +const_iterator end() const;</code> Επιστρέφει έναν //iterator// που δείχνει μετά τον τελευταίο χαρακτήρα του //string// | 
-|  <code cpp></code>  |   | +|  <code cpp>reverse_iterator rbegin(); 
-|  <code cpp></code>  |   | +const_reverse_iterator rbegin() const;</code> Επιστρέφει έναν //reverse iterator// που δείχνει στον τελευταίο χαρακτήρα του //string// | 
-|  <code cpp></code>  |   | +|  <code cpp>reverse_iterator rend(); 
-|  <code cpp></code>  |   | +const_reverse_iterator rend() const;</code> Επιστρέφει έναν //reverse iterator// που δείχνει πριν από τον πρώτο χαρακτήρα του //string//  |
-|  <code cpp></code>  |   | +
-|  <code cpp></code>  |   +
-|  <code cpp></code>  |   | +
-|  <code cpp></code>   | +
-|  <code cpp></code>  |   +
-|  <code cpp></code>  |   | +
-|  <code cpp></code>  |   |+
  
 === Παράδειγμα χρήσης iterator === === Παράδειγμα χρήσης iterator ===
  
 <code cpp> <code cpp>
-// string::begin/end 
 #include <iostream> #include <iostream>
 #include <string> #include <string>
Line 141: Line 133:
 </code> </code>
  
 +=== Παράδειγμα χρήσης reverse_iterator ===
  
 +<code cpp>
 +#include <iostream>
 +#include <string>
 +using namespace std;
 +
 +int main (){
 +  string str = "Hello World!";
 +  for (string::reverse_iterator rit=str.rbegin(); rit!=str.rend(); ++rit)
 +    cout << *rit;
 +  cout << endl;
 +}
 +</code>
  
 ==== Μεταβολή του αλφαριθμητικού ==== ==== Μεταβολή του αλφαριθμητικού ====
Line 148: Line 153:
 string& operator+= (const char* s); string& operator+= (const char* s);
 string& operator+= (char c);</code>  | Επεκτείνει το αλφαριθμητικό προσθέτοντας τους επιπλέον χαρακτήρες του ορίσματος στο τέλος του. Επιστρέφει μία αναφορά στο τρέχον αντικείμενο. | string& operator+= (char c);</code>  | Επεκτείνει το αλφαριθμητικό προσθέτοντας τους επιπλέον χαρακτήρες του ορίσματος στο τέλος του. Επιστρέφει μία αναφορά στο τρέχον αντικείμενο. |
-|  <code cpp></code>   +|  <code cpp>string& append (const string& str); 
-|  <code cpp></code>   +string& append (const char* str);</code> Επεκτείνει το αλφαριθμητικό ενθέτοντας ένα αντίγραφο του //str// στο τέλος του.  
-|  <code cpp></code>   +|  <code cpp>string& assign (const string& str); 
-|  <code cpp></code>   +string& assign (const char* str)</code> Αντιγράφει το //str// στο string.  
-|  <code cpp></code>  |   | +|  <code cpp>string& insert (size_t pos, const string& str); 
-|  <code cpp></code>   +string& insert (size_t pos, const char* str);</code> Ενθέτει ένα αντίγραφο του //str// στη θέση //pos// του //string//.  
-|  <code cpp></code>  |   | +|  <code cpp>string& erase (size_t pos = 0, size_t len = npos); 
- <code cpp></code>    |+iterator erase (iterator p); 
 +iterator erase (iterator first, iterator last);</code> Διαγράφει μέρος του //string//, μειώνοντας το μήκος του.  
 +|  <code cpp>string& replace (size_t pos,  size_t len,  const string& str); 
 +string& replace (size_t pos,  size_t len,  const char* s); 
 +string& replace (size_t pos,  size_t len,  const string& str, 
 +                 size_t subpos, size_t sublen); 
 +</code> Αντικαθιστά το υφιστάμενο //string// με το νέο //str// ξεκινώντας από την θέση //pos// του //string// και για μήκος //len//  | 
 +|  <code cpp>void swap (string& str);</code> Ανταλλάσει αμοιβαία το περιεχόμενο του τρέχοντος //string// με το περιοχόμενο του //string str//.  
 + 
 +<code cpp append.cpp> 
 +#include <iostream> 
 +#include <string> 
 +using namespace std; 
 + 
 +int main () { 
 +  string str="Hello"; 
 +  string str2=" "; 
 +  char[] str3="World"; 
 +  string str4 = "!\n"; 
 + 
 +  str+=str2; 
 +  str.append(str3); 
 +  str.append(str4); 
 +  cout << str; 
 +
 +</code> 
 + 
 +<code cpp replace.cpp> 
 +#include <iostream> 
 +#include <string> 
 +using namespace std; 
 + 
 +int main () { 
 +  string base="this is a test string."; 
 +  string str2="n example"; 
 +  string str3="sample phrase"; 
 +  string str4="useful."; 
 + 
 +  string str=base;                // "this is a test string." 
 +  str.replace(9,5,str2);          // "this is an example string." (1) 
 +  str.replace(19,6,str3,7,6);     // "this is an example phrase." (2) 
 +  str.replace(8,10,"just a");     // "this is just a phrase."     (3) 
 +  cout << str << endl; 
 +
 +</code
 + 
 +<code cpp chicken.cpp> 
 +#include <iostream> 
 +#include <string> 
 +using namespace std; 
 + 
 +main (){ 
 +  string chicken ("chicken"); 
 +  string egg ("egg"); 
 +  cout << "Before the swap, chicken comes from " << chicken; 
 +  cout << " and egg comes from " << egg << endl; 
 + 
 +  chicken.swap (egg); 
 +  cout << "After the swap, chicken comes from " << chicken; 
 +  cout << " and egg comes from " << egg << endl; 
 +
 +</code>
  
  
-=== Σύγκριση, αναζήτηση, εξαγωγή υπο-αλφαριθμητικών ===+==== Σύγκριση, αναζήτηση, εξαγωγή υπο-αλφαριθμητικών ====
  
 |  <code cpp></code>  |   | |  <code cpp></code>  |   |
cpp/strings.txt · Last modified: 2021/04/27 04:45 (external edit)