operator==,!=,<,<=,>,>=(std::experimental::basic_string_view)
From cppreference.com
< cpp | experimental | basic string view
| 2つの basic_string_viewオブジェクトを比較します |
||
| template< class CharT, class Traits > constexpr bool operator==( basic_string_view <CharT,Traits> lhs, |
(1) | (Library Fundamentals TS) |
| template< class CharT, class Traits > constexpr bool operator!=( basic_string_view <CharT,Traits> lhs, |
(2) | (Library Fundamentals TS) |
| template< class CharT, class Traits > constexpr bool operator<( basic_string_view <CharT,Traits> lhs, |
(3) | (Library Fundamentals TS) |
| template< class CharT, class Traits > constexpr bool operator<=( basic_string_view <CharT,Traits> lhs, |
(4) | (Library Fundamentals TS) |
| template< class CharT, class Traits > constexpr bool operator>( basic_string_view <CharT,Traits> lhs, |
(5) | (Library Fundamentals TS) |
| template< class CharT, class Traits > constexpr bool operator>=( basic_string_view <CharT,Traits> lhs, |
(6) | (Library Fundamentals TS) |
2つのビューを比較します。
すべての比較は、compare() メンバ関数を通じて行われます(これはTraits::compare()で定義されています)。
- lhs と rhs の両方のサイズが等しく、lhs の各文字が rhs の同じ位置にある文字と等価である場合、2つのビューは等しいとみなされます。
- 順序比較は辞書式順に行われます。比較は、std::lexicographical_compare と同等の関数によって実行されます。
実装は、basic_string_view<CharT,Traits> オブジェクト `sv` が、`sv` と basic_string_view<CharT,Traits>(t) を比較するのと同等の意味論で、`basic_string_view<CharT,Traits>` への暗黙的な変換を持つ別のオブジェクト `t` と比較できるように、これらの関数の十分な追加のconstexpr および noexcept オーバーロードを提供する必要があります。
[編集] パラメータ
| lhs, rhs | - | 比較するビュー |
[編集] 戻り値
対応する比較が成り立つ場合はtrue、そうでない場合はfalse。
[編集] 複雑性
ビューのサイズに対して線形。