Namespaces
Variants

std::experimental::basic_string_view<CharT,Traits>:: compare

From cppreference.net
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) Линейная по количеству сравниваемых символов.

Смотрите также

лексикографически сравнивает два представления
(шаблон функции)