int compare(const basic_string& str) const noexcept;
Effects: Determines the effective length rlen of the strings to compare as the smallest of size() and str.size(). The function then compares the two strings by calling traits::compare(data(), str.data(), rlen).
Returns: The nonzero result if the result of the comparison is nonzero. Otherwise, returns a value as indicated in Table [tab:strings.compare].
Condition | Return Value |
size() < str.size() | < 0 |
size() == str.size() | 0 |
size() > str.size() | > 0 |
int compare(size_type pos1, size_type n1,
const basic_string& str) const;
Returns: basic_string(*this,pos1,n1).compare(str).
int compare(size_type pos1, size_type n1,
const basic_string& str,
size_type pos2, size_type n2 = npos) const;
Returns: basic_string(*this, pos1, n1).compare(basic_string(str, pos2, n2)).
int compare(const charT* s) const;
Returns: compare(basic_string(s)).
int compare(size_type pos, size_type n1,
const charT* s) const;
Returns: basic_string(*this, pos, n1).compare(basic_string(s)).
int compare(size_type pos, size_type n1,
const charT* s, size_type n2) const;
Returns: basic_string(*this, pos, n1).compare(basic_string(s, n2)).