std::experimental::basic_string_view<CharT,Traits>:: basic_string_view
From cppreference.com
<
cpp
|
experimental
|
basic string view
constexpr
basic_string_view
(
)
noexcept
;
|
(1) | (library fundamentals TS) |
constexpr
basic_string_view
(
const
basic_string_view
&
other
)
noexcept
=
default
;
|
(2) | (library fundamentals TS) |
template
<
class
Allocator
>
basic_string_view ( const std:: basic_string < CharT, Traits, Allocator > & str ) noexcept ; |
(3) | (library fundamentals TS) |
constexpr
basic_string_view
(
const
CharT
*
s, size_type count
)
;
|
(4) | (library fundamentals TS) |
constexpr
basic_string_view
(
const
CharT
*
s
)
;
|
(5) | (library fundamentals TS) |
1)
Default constructor. Constructs an empty
basic_string_view
.
2)
Copy constructor. Constructs a view of the same content as
other
.
3)
Constructs a view of the first
str.
size
(
)
characters of the character array starting with the element pointed by
str.
data
(
)
.
4)
Constructs a view of the first
count
characters of the character array starting with the element pointed by
s
.
s
can contain null characters. The behavior is undefined if
[
s
,
s
+
count
)
is not a valid range (even though the constructor may not access any of the elements of this range).
5)
Constructs a view of the null-terminated character string pointed to by
s
, not including the terminating null character. The length of the view is determined as if by
Traits
::
length
(
s
)
. The behavior is undefined if
[
s
,
s
+
Traits
::
length
(
s
)
)
is not a valid range (even though the constructor may not access any of the elements of this range).
Parameters
other | - | another view to initialize the view with |
str | - | a C++ string object to initialize view with |
s | - | pointer to a character array or a C string to initialize the view with |
count | - | number of characters to include in the view |
Exceptions
4,5)
Throws nothing.
Complexity
1-4)
Constant.
5)
Linear in length of
s
.
Example
Run this code
#include <experimental/string_view> #include <iostream> int main() { std::string cppstr = "Foo"; char array[3] = {'B', 'a', 'r'}; std::experimental::string_view cppstr_v(cppstr); std::experimental::string_view array_v(array, sizeof array); std::experimental::wstring_view wcstr_v = L"xyzzy"; std::cout << cppstr_v << '\n' << array_v << '\n' << wcstr_v.size() << '\n'; }
Output:
Foo Bar 5
See also
assigns a view
(public member function) |