GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
std::basic_string_view::compare(3) C++ Standard Libary std::basic_string_view::compare(3)

std::basic_string_view::compare - std::basic_string_view::compare


constexpr int compare( basic_string_view v ) const noexcept; (1) (since C++17)
constexpr int compare( size_type pos1, size_type count1, (2) (since C++17)
basic_string_view v ) const;
constexpr int compare( size_type pos1, size_type count1,
basic_string_view v, (3) (since C++17)
size_type pos2, size_type count2 ) const;
constexpr int compare( const CharT* s ) const; (4) (since C++17)
constexpr int compare( size_type pos1, size_type count1, (5) (since C++17)
const CharT* s ) const;
constexpr int compare( size_type pos1, size_type count1, (6) (since C++17)
const CharT* s, size_type count2 ) const;


Compares two character sequences.


1) The length rlen of the sequences to compare is the smaller of size() and
v.size(). The function compares the two views by calling traits::compare(data(),
v.data(), rlen), and returns a value according to the following table:


Condition Result Return value
Traits::compare(data(), v.data(), rlen) < 0 this is less <0
than v
size() < this is less <0
v.size() than v
Traits::compare(data(), v.data(), rlen) == 0 size() == this is equal to 0
v.size() v
size() > this is greater >0
v.size() than v
Traits::compare(data(), v.data(), rlen) > 0 this is greater >0
than v


2) Equivalent to substr(pos1, count1).compare(v).
3) Equivalent to substr(pos1, count1).compare(v.substr(pos2, count2)).
4) Equivalent to compare(basic_string_view(s)).
5) Equivalent to substr(pos1, count1).compare(basic_string_view(s)).
6) Equivalent to substr(pos1, count1).compare(basic_string_view(s, count2)).


v - view to compare
s - pointer to the character string to compare to
count1 - number of characters of this view to compare
pos1 - position of the first character in this view to compare
count2 - number of characters of the given view to compare
pos2 - position of the first character of the given view to compare


negative value if this view is less than the other character sequence, zero if the
both character sequences are equal, positive value if this view is greater than the
other character sequence.


1) Linear in the number of characters compared.

// Run this code


#include <string_view>
int main() {
using std::operator""sv;
static_assert( "abc"sv.compare("abcd"sv) < 0 );
static_assert( "abcd"sv.compare("abc"sv) > 0 );
static_assert( "abc"sv.compare("abc"sv) == 0 );
static_assert( ""sv.compare(""sv) == 0 );
}


compares two strings
compare (public member function of
std::basic_string<CharT,Traits,Allocator>)
operator==
operator!=
operator<
operator>
operator<=
operator>=
operator<=> lexicographically compares two string views
(C++17) (function template)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(removed in C++20)
(C++20)

2022.07.31 http://cppreference.com

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.