std::basic_string<CharT,Traits,Allocator>:: operator[]
|
CharT
&
operator
[
]
(
size_type pos
)
;
|
(1) | (constexpr seit C++20) |
|
const
CharT
&
operator
[
]
(
size_type pos
)
const
;
|
(2) | (constexpr seit C++20) |
Gibt eine Referenz auf das Zeichen an der angegebenen Position pos zurück, falls pos < size ( ) , oder falls pos == size ( ) :
|
Das Verhalten ist undefiniert. |
(bis C++11) |
|
Gibt eine Referenz auf CharT ( ) zurück. Wenn das durch die zurückgegebene Referenz referenzierte Objekt auf einen anderen Wert als CharT ( ) geändert wird, ist das Verhalten undefiniert. |
(seit C++11) |
|
Wenn pos > size ( ) true ist, ist das Verhalten undefiniert. |
(bis C++26) |
|
Wenn pos > size ( ) true ist:
|
(seit C++26) |
Inhaltsverzeichnis |
Parameter
| pos | - | Position des zurückzugebenden Zeichens |
Rückgabewert
Komplexität
Konstante.
Beispiel
#include <iostream> #include <string> int main() { const std::string e("Exemplar"); for (unsigned i = e.length() - 1; i != 0; i /= 2) std::cout << e[i]; std::cout << '\n'; const char* c = &e[0]; std::cout << c << '\n'; // print as a C string // Change the last character of s into a 'y' std::string s("Exemplar "); s[s.size() - 1] = 'y'; // equivalent to s.back() = 'y'; std::cout << s << '\n'; }
Ausgabe:
rmx Exemplar Exemplary
Fehlerberichte
Die folgenden verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.
| DR | Angewendet auf | Verhalten wie veröffentlicht | Korrigiertes Verhalten |
|---|---|---|---|
| LWG 259 | C++98 |
Überladung
(
1
)
konnte const L-Wert zurückgeben
data ( ) [ pos ] , was fehlerhaft war |
geändert zur Rückgabe von
* ( begin ( ) + pos ) |
| LWG 2475 | C++11 |
falls
pos
==
size
(
)
, war das Verhalten bei Modifikation des
durch die Referenz referenzierten Objekts undefiniert |
wohldefiniert falls
modifiziert zu CharT ( ) |
Siehe auch
|
greift auf das angegebene Zeichen mit Grenzprüfung zu
(öffentliche Elementfunktion) |
|
|
(
DR*
)
|
greift auf das erste Zeichen zu
(öffentliche Elementfunktion) |
|
(
DR*
)
|
greift auf das letzte Zeichen zu
(öffentliche Elementfunktion) |
|
greift auf das angegebene Zeichen zu
(öffentliche Elementfunktion von
std::basic_string_view<CharT,Traits>
)
|