operator==,!=,<,<=,>,>=(std::basic_string_view)

来自cppreference.com
 
 
 
 
定义于头文件 <string_view>
template< class CharT, class Traits >

constexpr bool operator==( basic_string_view <CharT,Traits> lhs,

                           basic_string_view <CharT,Traits> rhs ) noexcept;
(1) (C++17 起)
template< class CharT, class Traits >

constexpr bool operator!=( basic_string_view <CharT,Traits> lhs,

                           basic_string_view <CharT,Traits> rhs ) noexcept;
(2) (C++17 起)
template< class CharT, class Traits >

constexpr bool operator<( basic_string_view <CharT,Traits> lhs,

                          basic_string_view <CharT,Traits> rhs ) noexcept;
(3) (C++17 起)
template< class CharT, class Traits >

constexpr bool operator<=( basic_string_view <CharT,Traits> lhs,

                           basic_string_view <CharT,Traits> rhs ) noexcept;
(4) (C++17 起)
template< class CharT, class Traits >

constexpr bool operator>( basic_string_view <CharT,Traits> lhs,

                          basic_string_view <CharT,Traits> rhs ) noexcept;
(5) (C++17 起)
template< class CharT, class Traits >

constexpr bool operator>=( basic_string_view <CharT,Traits> lhs,

                           basic_string_view <CharT,Traits> rhs ) noexcept;
(6) (C++17 起)

比较二个视图。

通过 compare() 成员函数进行所有比较(其自身以 Traits::compare() 定义):

  • lhsrhs 的大小相等且 lhs 中每个字符等于 rhs 在同一位置的字符,则二个视图相等。

实现应对这些函数提供充足的额外 constexprnoexcept 重载,以令 basic_string_view<CharT,Traits> 对象 sv 可以与另一带隐式转换成 basic_string_view<CharT,Traits> 的对象 t 比较,而且语义上与比较 svbasic_string_view<CharT,Traits>(t) 相同。

参数

lhs, rhs - 要比较的视图

返回值

若对应比较关系成立则为 true ,否则为 false

复杂度

与视图大小成线性。