20 Strings library [strings]

20.3 String classes [string.classes]

20.3.3 Non-member functions [string.nonmembers]

20.3.3.4 operator< [string.op<]

template<class charT, class traits, class Allocator> bool operator<(const basic_string<charT, traits, Allocator>& lhs, const basic_string<charT, traits, Allocator>& rhs) noexcept;
Returns: lhs.compare(rhs) < 0.
template<class charT, class traits, class Allocator> bool operator<(const charT* lhs, const basic_string<charT, traits, Allocator>& rhs);
Returns: rhs.compare(lhs) > 0.
template<class charT, class traits, class Allocator> bool operator<(const basic_string<charT, traits, Allocator>& lhs, const charT* rhs);
Returns: lhs.compare(rhs) < 0.