lexicographical_compare()

By default, the less-than operator is applied, although an optional fifth option allows us to provide an alternative ordering operation. Returns true if the first sequence is less than or equal to the second sequence.

 #include <algorithm> class size_compare { public: bool operator()( const string &a, const string &b ) { return a.length() <= b.length(); } }; string sa1[] = { "Piglet", "Pooh", "Tigger" }; string sa2[] = { "Piglet", "Pooch", "Eeyore" }; // false: 'c' less than 'h' res = lexicographical_compare( sa1, sa1+3, sa2, sa2+3 ); list<string> ilist1( sa1, sa1+3 ); list<string> ilist2( sa2, sa2+3 ); // true: Pooh < Pooch res = lexicographical_compare( ilist1.begin(), ilist1.end(), ilist2.begin(), ilist2.end(), ...

Get Essential C++ now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.