Namespaces
Variants

std::basic_string_view<CharT,Traits>:: operator[]

From cppreference.net
constexpr const_reference operator [ ] ( size_type pos ) const ;
(depuis C++17)

Retourne une référence constante au caractère à la position spécifiée pos .

Si pos < size ( ) est false , le comportement est indéfini.

(jusqu'à C++26)

Si pos < size ( ) est false :

  • Si l'implémentation est renforcée , une violation de contrat se produit. De plus, si le gestionnaire de violation de contrat revient sous la sémantique d'évaluation "observer", le comportement est indéfini.
  • Si l'implémentation n'est pas renforcée, le comportement est indéfini.
(depuis C++26)

Table des matières

Paramètres

pos - position du caractère à retourner

Valeur de retour

data_  [ pos ]

Exceptions

Ne lance pas.

Complexité

Constante.

Notes

Contrairement à std::basic_string::operator[] , std :: basic_string_view :: operator [ ] ( size ( ) ) ne retourne pas une référence à CharT ( ) .

Exemple

#include <iostream>
#include <string_view>
int main()
{
    std::string str = "Exemplar";
    std::string_view v = str;
    std::cout << v[2] << '\n';
//  v[2] = 'y'; // Error: cannot modify through a string view
    str[2] = 'y';
    std::cout << v[2] << '\n';
}

Sortie :

e
y

Voir aussi

accède au caractère spécifié avec vérification des limites
(fonction membre publique)
accède au caractère spécifié
(fonction membre publique de std::basic_string<CharT,Traits,Allocator> )