 st8b7c:f320:99b9:690f:4595:cd17:293a:c069basic_string_view<CharT,Traits>8b7c:f320:99b9:690f:4595:cd17:293a:c069operator[]    constexpr const_reference operator[]( size_type pos ) const;
    (since C++17)    Returns a const reference to the character at specified location pos.
No bounds checking is performed: the behavior is undefined if pos >= size().
 Parameters    pos   -   position of the character to return 

  Return value Const reference to the requested character.
 Exceptions Does not throw.
 Complexity Constant.
 Notes Unlike st8b7c:f320:99b9:690f:4595:cd17:293a:c069basic_string8b7c:f320:99b9:690f:4595:cd17:293a:c069operator[], st8b7c:f320:99b9:690f:4595:cd17:293a:c069basic_string_view8b7c:f320:99b9:690f:4595:cd17:293a:c069operator[](size()) has undefined behavior instead of returning CharT().
 Example  #include <iostream>
#include <string_view>
int main()
{
    st8b7c:f320:99b9:690f:4595:cd17:293a:c069string str = "Exemplar";
    st8b7c:f320:99b9:690f:4595:cd17:293a:c069string_view v = str;
    st8b7c:f320:99b9:690f:4595:cd17:293a:c069cout << v[2] << '\n';
//  v[2] = 'y'; // Error: cannot modify through a string view
    str[2] = 'y';
    st8b7c:f320:99b9:690f:4595:cd17:293a:c069cout << v[2] << '\n';
} Output:
e
y   See also     at
(C++17)   accesses the specified character with bounds checking  (public member function) 
    operator[]   accesses the specified character  (public member function of st8b7c:f320:99b9:690f:4595:cd17:293a:c069basic_string<CharT,Traits,Allocator>) 
  

    
{'path': 'public/docs/cpp/string/basic_string_view/operator_at.html', 'source': 'DevDocs.IO'}