Espacios de nombres
Variantes
Acciones

Archivo de encabezado de la biblioteca estándar <string_view>

De cppreference.com
< cpp‎ | header
 
 
Archivos de encabezado de la biblioteca estándar
 

Este archivo de encabezado es parte de la biblioteca de cadenas.

Contenido

[editar]Clases

Vista sobre cadena de solo lectura.
(plantilla de clase)[editar]
std::string_viewstd::basic_string_view<char>
std::u8string_viewstd::basic_string_view<char8_t>(C++20)
std::u16string_viewstd::basic_string_view<char16_t>
std::u32string_viewstd::basic_string_view<char32_t>
std::wstring_viewstd::basic_string_view<wchar_t>
Apoyo de generación de dispersión para vistas sobre cadena
(especialización de plantilla de clase)[editar]

[editar]Funciones

(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(eliminado en C++20)(C++20)
Compara dos vistas sobre cadena lexicográficamente.
(plantilla de función)[editar]
Realiza salida de flujo en vistas sobre cadena.
(plantilla de función)[editar]

[editar]Sinopsis

namespace std {   // plantilla de clase basic_string_viewtemplate<typename charT, typename traits = char_traits<charT>>class basic_string_view;   // funciones no miembro de comparacióntemplate<typename charT, typename traits>constexprbool operator==(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;template<typename charT, typename traits>constexprbool operator!=(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;template<typename charT, typename traits>constexprbool operator<(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;template<typename charT, typename traits>constexprbool operator>(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;template<typename charT, typename traits>constexprbool operator<=(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;template<typename charT, typename traits>constexprbool operator>=(basic_string_view<charT, traits> x, basic_string_view<charT, traits> y)noexcept;/* sobrecargas de funciones de comparación adicionales suficientes */   // insertadores y extractorestemplate<typename charT, typename traits> basic_ostream<charT, traits>& operator<<(basic_ostream<charT, traits>& os, basic_string_view<charT, traits> str);   // nombres de tipos definidos (typedef) de basic_string_viewusing string_view = basic_string_view<char>;using u8string_view = basic_string_view<char8_t>;using u16string_view = basic_string_view<char16_t>;using u32string_view = basic_string_view<char32_t>;using wstring_view = basic_string_view<wchar_t>;   // soporte para hash (resumen)template<typename T>struct hash;template<>struct hash<string_view>;template<>struct hash<u8string_view>;template<>struct hash<u16string_view>;template<>struct hash<u32string_view>;template<>struct hash<wstring_view>;   inlinenamespace literals {inlinenamespace string_view_literals {// sufijo para los literales de basic_string_viewconstexpr string_view operator "" sv(constchar* str, size_t len)noexcept;constexpr u8string_view operator "" sv(const char8_t* str, size_t len)noexcept;constexpr u16string_view operator "" sv(constchar16_t* str, size_t len)noexcept;constexpr u32string_view operator "" sv(constchar32_t* str, size_t len)noexcept;constexpr wstring_view operator "" sv(constwchar_t* str, size_t len)noexcept;}}}// namespace std

[editar]Plantilla de clase std::basic_string_view

namespace std {template<typename charT, typename traits = char_traits<charT>>class basic_string_view {public:// tipostypedef traits traits_type;typedef charT value_type;typedef charT* pointer;typedefconst charT* const_pointer;typedef charT& reference;typedefconst charT& const_reference;typedef/*definido por la implementación*/ const_iterator;typedef const_iterator iterator;typedef reverse_iterator<const_iterator> const_reverse_iterator;typedef const_reverse_iterator reverse_iterator;typedef size_t size_type;typedef ptrdiff_t difference_type;staticconstexpr size_type npos = size_type(-1);   // construcción y asignaciónconstexpr basic_string_view()noexcept;constexpr basic_string_view(const basic_string_view&)noexcept=default; basic_string_view &operator=(const basic_string_view&)noexcept=default;constexpr basic_string_view(const charT* str);constexpr basic_string_view(const charT* str, size_type len);   // soporte de iteradoresconstexpr const_iterator begin()constnoexcept;constexpr const_iterator end()constnoexcept;constexpr const_iterator cbegin()constnoexcept;constexpr const_iterator cend()constnoexcept;constexpr const_reverse_iterator rbegin()constnoexcept;constexpr const_reverse_iterator rend()constnoexcept;constexpr const_reverse_iterator crbegin()constnoexcept;constexpr const_reverse_iterator crend()constnoexcept;   // capacidadconstexpr size_type size()constnoexcept;constexpr size_type length()constnoexcept;constexpr size_type max_size()constnoexcept;[[nodiscard]]constexprbool empty()constnoexcept;   // acceso a elementosconstexpr const_reference operator[](size_type pos)const;constexpr const_reference at(size_type pos)const;constexpr const_reference front()const;constexpr const_reference back()const;constexpr const_pointer data()constnoexcept;   // modificadoresconstexprvoid remove_prefix(size_type n);constexprvoid remove_suffix(size_type n);constexprvoid swap(basic_string_view& s)noexcept;   constexpr size_type copy(charT* s, size_type n, size_type pos =0)const;constexpr basic_string_view substr(size_type pos =0, size_type n = npos)const;constexprint compare(basic_string_view s)constnoexcept;constexprint compare(size_type pos1, size_type n1, basic_string_view s)const;constexprint compare(size_type pos1, size_type n1, basic_string_view s, size_type pos2, size_type n2)const;constexprint compare(const charT* s)const;constexprint compare(size_type pos1, size_type n1, const charT* s)const;constexprint compare(size_type pos1, size_type n1, const charT* s, size_type n2)const;constexprbool starts_with(basic_string_view x)constnoexcept;constexprbool starts_with(charT x)constnoexcept;constexprbool starts_with(const charT* x)const;constexprbool ends_with(basic_string_view x)constnoexcept;constexprbool ends_with(charT x)constnoexcept;constexprbool ends_with(const charT* x)const;constexpr size_type find(basic_string_view s, size_type pos =0)constnoexcept;constexpr size_type find(charT c, size_type pos =0)constnoexcept;constexpr size_type find(const charT* s, size_type pos, size_type n)const;constexpr size_type find(const charT* s, size_type pos =0)const;constexpr size_type rfind(basic_string_view s, size_type pos = npos)constnoexcept;constexpr size_type rfind(charT c, size_type pos = npos)constnoexcept;constexpr size_type rfind(const charT* s, size_type pos, size_type n)const;constexpr size_type rfind(const charT* s, size_type pos = npos)const;constexpr size_type find_first_of(basic_string_view s, size_type pos =0)constnoexcept;constexpr size_type find_first_of(charT c, size_type pos =0)constnoexcept;constexpr size_type find_first_of(const charT* s, size_type pos, size_type n)const;constexpr size_type find_first_of(const charT* s, size_type pos =0)const;constexpr size_type find_last_of(basic_string_view s, size_type pos = npos)constnoexcept;constexpr size_type find_last_of(charT c, size_type pos = npos)constnoexcept;constexpr size_type find_last_of(const charT* s, size_type pos, size_type n)const;constexpr size_type find_last_of(const charT* s, size_type pos = npos)const;constexpr size_type find_first_not_of(basic_string_view s, size_type pos =0)constnoexcept;constexpr size_type find_first_not_of(charT c, size_type pos =0)constnoexcept;constexpr size_type find_first_not_of(const charT* s, size_type pos, size_type n)const;constexpr size_type find_first_not_of(const charT* s, size_type pos =0)const;constexpr size_type find_last_not_of(basic_string_view s,size_type pos = npos)constnoexcept;constexpr size_type find_last_not_of(charT c, size_type pos = npos)constnoexcept;constexpr size_type find_last_not_of(const charT* s, size_type pos, size_type n)const;constexpr size_type find_last_not_of(const charT* s, size_type pos = npos)const;private: const_pointer data_;// solo exposición size_type size_;// solo exposición};   }
close