std::experimental::basic_string_view<CharT,Traits>:: compare
From cppreference.net
<
cpp
|
experimental
|
basic string view
|
constexpr
int
compare
(
basic_string_view v
)
const
noexcept
;
|
(1) | (library fundamentals TS) |
|
constexpr
int
compare
(
size_type pos1, size_type count1,
basic_string_view v ) const |
(2) | (library fundamentals TS) |
|
constexpr
int
compare
(
size_type pos1, size_type count1, basic_string_view v,
size_type pos2, size_type count2 ) const ; |
(3) | (library fundamentals TS) |
|
constexpr
int
compare
(
const
CharT
*
s
)
const
;
|
(4) | (library fundamentals TS) |
|
constexpr
int
compare
(
size_type pos1, size_type count1,
const CharT * s ) const ; |
(5) | (library fundamentals TS) |
|
constexpr
int
compare
(
size_type pos1, size_type count1,
const CharT * s, size_type count2 ) const ; |
(6) | (library fundamentals TS) |
Сравнивает две символьные последовательности.
1)
Длина
rlen
сравниваемых последовательностей является меньшей из
size
(
)
и
v.
size
(
)
. Функция сравнивает два представления, вызывая
traits
::
compare
(
data
(
)
, v.
data
(
)
, rlen
)
, и возвращает значение в соответствии со следующей таблицей:
| Условие | Результат | Возвращаемое значение | |
|---|---|---|---|
Traits::compare(data(), v.data(),
rlen
) < 0
|
this
меньше
чем
v
|
< 0 | |
Traits::compare(data(), v.data(),
rlen
) == 0
|
size() < v.size()
|
this
меньше
чем
v
|
< 0 |
size() == v.size()
|
this
равен
v
|
0 | |
size() > v.size()
|
this
больше
чем
v
|
> 0 | |
Traits::compare(data(), v.data(),
rlen
) > 0
|
this
больше
чем
v
|
> 0 | |
2)
Эквивалентно
substr
(
pos1, count1
)
.
compare
(
v
)
.
3)
Эквивалентно
substr
(
pos1, count1
)
.
compare
(
v.
substr
(
pos2, count2
)
)
.
4)
Эквивалентно
compare
(
basic_string_view
(
s
)
)
.
5)
Эквивалентно
substr
(
pos1, count1
)
.
compare
(
basic_string_view
(
s
)
)
.
6)
Эквивалентно
substr
(
pos1, count1
)
.
compare
(
basic_string_view
(
s, count2
)
)
.
Содержание |
Параметры
| v | - | представление для сравнения |
| s | - | указатель на строку символов для сравнения |
| count1 | - | количество символов данного представления для сравнения |
| pos1 | - | позиция первого символа в данном представлении для сравнения |
| count2 | - | количество символов заданного представления для сравнения |
| pos2 | - | позиция первого символа заданного представления для сравнения |
Возвращаемое значение
отрицательное значение, если данное представление меньше другой символьной последовательности, ноль, если обе символьные последовательности равны, положительное значение, если данное представление больше другой символьной последовательности.
Сложность
1) Линейная по количеству сравниваемых символов.
Смотрите также
|
лексикографически сравнивает два представления
(шаблон функции) |