std::experimental:: basic_string_view
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 > |
Template parameters
CharT | - | character type |
Traits | - | traits class specifying the operations on the character type |
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 LegacyRandomAccessIterator |
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.
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) |
|
Modifiers |
|
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) |
Non-member functions
lexicographically compares two views
(function template) |
|
Input/output |
|
performs stream output on views
(function template) |
Helper classes
hash support for views
(class template specialization) |
Feature test macros
__cpp_lib_experimental_string_view
|
a value of at least
201411
indicates that basic_string_view template is supported
(macro constant) |