Ich mag zu ändern, um einen C++ Zeichenfolge an einem bestimmten Index wie folgt ändern:C++, bester Weg, um eine Zeichenfolge an einem bestimmten Index
string s = "abc";
s[1] = 'a';
Ist der folgende Code gültig? Ist das ein akzeptabler Weg dies zu tun?
Ich habe keinen Hinweis finden, der sagt, es gilt:
http://www.cplusplus.com/reference/string/string/
die besagt, dass durch „überladenen Operator [] in String“ wir den Schreibvorgang durchführen können.
Ja, kein Problem überhaupt zu erreichen. Wenn Sie wirklich eine Referenz wollen, Abschnitt 21.4.5/2 des C++ 11 Standards. –
Ugh. In C++ 11 ist dies aufgrund eines Defekts im Standard eigentlich verboten, und Sie müssen * technisch * 's.begin() [1] = 'a' verwenden;' Aber es lohnt sich nicht, sich darüber Gedanken zu machen. – Potatoswatter
Und Sie * fanden * eine Referenz, die besagt, dass sie gültig ist, obwohl cplusplus.com im Allgemeinen minderwertig und oft veraltet ist. In Anbetracht des Links ist es unklar, was Sie sonst noch wissen möchten. – Potatoswatter