wie funktioniert assign?
-
hi, wenn ich strings erzeuge zum beispiel:
string str1 ("Frank");
oder so ähnlich, ist mir die Funktionsweise klar, nur ich habe das Problem, ich verstehe diese Ausdrucksweise nicht:
str2.assign("Tina");
str2.assign("Tina",1,2);
str2.assign(10,'0');bitte um hilfe

-
die Funktion assign ist bei string 5 mal überladen:
assign(const string& str);
=> damit wird in deinen String der übergebene String kopiertassign(const string& str, size_t pos, size_t n);
=> damit wird in deinen String ein Substring des übergebenen Strings beginnend ab dessen Position pos über eine Länge von n kopiertassign(const char* s, size_t n);
=> damit wird in deinen String ein String über die ersten n Charaktäre des C-Strings s kopiert
(das ist das was du als 2. Beispiel geschrieben hast)assign(const char* s);
=> damit wird in deinen String der übergebene C-String kopiert (der muss nullterminiert sein!)assign(size_t n, char c);
=> damit wird in deinen String ein String der n mal aus dem Zeichen c besteht kopiertzusätzlich gibt es noch die altbekannte
template <class InputIterator> string& assign(InputIterator first, InputIterator last);
=> damit wird in deinen String Elemente von Position first bis last (ausgeschlossen) kopiert
-
Oder auch gleich hier reinschauen:
http://www.cplusplus.com/reference/string/string/assign.html