std::experimental::basic_string_view<CharT,Traits>:: basic_string_view
From cppreference.net
<
cpp
|
experimental
|
basic string view
|
constexpr
basic_string_view
(
)
noexcept
;
|
(1) | (библиотека fundamentals TS) |
|
constexpr
basic_string_view
(
const
basic_string_view
&
other
)
noexcept
=
default
;
|
(2) | (библиотека fundamentals TS) |
|
template
<
class
Allocator
>
basic_string_view ( const std:: basic_string < CharT, Traits, Allocator > & str ) noexcept ; |
(3) | (библиотека fundamentals TS) |
|
constexpr
basic_string_view
(
const
CharT
*
s, size_type count
)
;
|
(4) | (библиотека fundamentals TS) |
|
constexpr
basic_string_view
(
const
CharT
*
s
)
;
|
(5) | (библиотека fundamentals TS) |
1)
Конструктор по умолчанию. Создает пустой
basic_string_view
.
2)
Конструктор копирования. Создает представление того же содержимого, что и
other
.
3)
Создает представление первых
str.
size
(
)
символов массива символов, начинающегося с элемента, на который указывает
str.
data
(
)
.
4)
Создает представление первых
count
символов массива символов, начиная с элемента, на который указывает
s
.
s
может содержать нулевые символы. Поведение не определено, если
[
s
,
s
+
count
)
не является допустимым диапазоном (даже если конструктор может не обращаться к любым элементам этого диапазона).
5)
Создает представление строки символов с нулевым завершением, на которую указывает
s
, не включая завершающий нулевой символ. Длина представления определяется как если бы с помощью
Traits
::
length
(
s
)
. Поведение не определено, если
[
s
,
s
+
Traits
::
length
(
s
)
)
не является допустимым диапазоном (даже если конструктор может не обращаться ни к одному из элементов этого диапазона).
Содержание |
Параметры
| other | - | другое представление для инициализации текущего представления |
| str | - | объект строки C++ для инициализации представления |
| s | - | указатель на массив символов или C-строку для инициализации представления |
| count | - | количество символов для включения в представление |
Исключения
4,5)
Ничего не выбрасывает.
Сложность
1-4)
Константа.
5)
Линейная по длине
s
.
Пример
Запустить этот код
#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'; }
Вывод:
Foo Bar 5
Смотрите также
|
присваивает представление
(публичная функция-член) |