std::basic_string_view<CharT,Traits>::basic_string_view
From cppreference.com
                    
                                        
                    < cpp | string | basic string view
                    
                                                            
                    | constexpr basic_string_view() noexcept; | (1) | (since C++17) | 
| constexpr basic_string_view(const basic_string_view& other) noexcept = default; | (2) | (since C++17) | 
| constexpr basic_string_view(const CharT* s, size_type count); | (3) | (since C++17) | 
| constexpr basic_string_view(const CharT* s); | (4) | (since C++17) | 
1) Default constructor. Constructs an empty 
basic_string_view. After construction, data() is equal to nullptr, and size() is equal to 0.2) Copy constructor. Constructs a view of the same content as 
other. After construction, data() is equal to other.data(), and size() is equal to other.size().3) 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). After construction, data() is equal to s, and size() is equal to count.4) 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. After construction, data() is equal to s, and size() is equal to Traits::length(s).Parameters
| other | - | another view to initialize the 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 | 
Complexity
1-3) constant
4) linear in length of 
sExample
Run this code
#include <iostream> #include <string> #include <string_view> int main() { std::wstring_view wcstr_v = L"xyzzy"; char array[3] = {'B', 'a', 'r'}; std::string_view array_v(array, std::size(array)); std::string cppstr = "Foo"; std::string_view cppstr_v(cppstr); std::cout << cppstr_v << '\n' << array_v << '\n' << wcstr_v.size() << '\n'; }
Output:
Foo Bar 5
See also
| assigns a view (public member function) |