std::experimental::basic_string_view
From cppreference.com
< cpp | experimental
Defined in header
<experimental/string_view>
|
||
template<
class CharT, |
(library fundamentals TS) | |
The class template basic_string_view
describes an object that can refer to a constant contiguous sequence of char-like objects with the first element of the sequence at position zero.
A typical implementation holds only two members: a pointer to constant CharT
and a size.
Several typedefs for common character types are provided:
Defined in header
<experimental/string_view> |
|
Type | Definition |
std::experimental::string_view | std::experimental::basic_string_view<char> |
std::experimental::wstring_view | std::experimental::basic_string_view<wchar_t> |
std::experimental::u16string_view | std::experimental::basic_string_view<char16_t> |
std::experimental::u32string_view | std::experimental::basic_string_view<char32_t> |
Contents |
[edit] Template parameters
CharT | - | character type |
Traits | - | traits class specifying the operations on the character type |
[edit] Member types
Member type | Definition |
traits_type
|
Traits
|
value_type
|
CharT
|
pointer
|
CharT*
|
const_pointer
|
const CharT*
|
reference
|
CharT&
|
const_reference
|
const CharT&
|
const_iterator
|
implementation-defined RandomAccessIterator
|
iterator
|
const_iterator
|
reverse_iterator
|
const_reverse_iterator
|
const_reverse_iterator
|
std::reverse_iterator<const_iterator> |
size_type
|
std::size_t |
difference_type
|
std::ptrdiff_t |
Note: iterator
and const_iterator
are the same type because string views are views into constant character sequences.
[edit] Member functions
constructs a basic_string_view (public member function) |
|
assigns a view (public member function) |
|
Iterators |
|
returns an iterator to the beginning (public member function) |
|
returns an iterator to the end (public member function) |
|
returns a reverse iterator to the beginning (public member function) |
|
returns a reverse iterator to the end (public member function) |
|
Element access |
|
access specified character (public member function) |
|
access specified character with bounds checking (public member function) |
|
accesses the first character (public member function) |
|
accesses the last character (public member function) |
|
returns a pointer to the first character of a view (public member function) |
|
Capacity |
|
returns the number of characters (public member function) |
|
returns the maximum number of characters (public member function) |
|
checks whether the view is empty (public member function) |
|
Modifers |
|
Shrinks the view by moving its start forward (public member function) |
|
Shrinks the view by moving its end backward (public member function) |
|
swaps the contents (public member function) |
|
Operations |
|
creates a string from the view (public member function) |
|
copies characters (public member function) |
|
returns a substring (public member function) |
|
compares two views (public member function) |
|
find characters in the view (public member function) |
|
find the last occurrence of a substring (public member function) |
|
find first occurrence of characters (public member function) |
|
find last occurrence of characters (public member function) |
|
find first absence of characters (public member function) |
|
find last absence of characters (public member function) |
|
Constants |
|
[static]
|
special value. The exact meaning depends on the context (public static member constant) |
[edit] Non-member functions
lexicographically compares two views (function template) |
|
Input/output |
|
performs stream output on views (function template) |
[edit] Helper classes
hash support for views (class template specialization) |
[edit] Feature test macros
__cpp_lib_experimental_string_view |
a value of at least 201411 indicates that basic_string_view template is supported (macro constant) |