C++98stlbeginner
std::less
C++98 · The Foundation · Compiler flag: -std=c++98
Explanation
Checks if one value is less than another.
Real-World Scenario
Sort prices in ascending order.
Quick Snippet
snippet.cpp
std::less<int> lt; lt(3, 5);Full Example
less.cpp
// CodeNebula - C++98 Example: std::less
// Compile: g++ -std=c++98 -Wall -Wextra -o example less.cpp
#include <iostream>
#include <functional>
#include <algorithm>
#include <set>
int main() {
int arr[] = {5, 2, 8, 1, 9, 3};
int n = 6;
// std::less is the default comparator for sort (ascending)
std::sort(arr, arr + n, std::less<int>());
std::cout << "Sorted ascending: ";
for (int i = 0; i < n; ++i) std::cout << arr[i] << " ";
std::cout << std::endl;
// Count elements less than 5
int count = std::count_if(arr, arr + n,
std::bind2nd(std::less<int>(), 5));
std::cout << "Elements < 5: " << count << std::endl;
// std::set uses std::less<T> by default
std::set<int, std::less<int> > s;
s.insert(40); s.insert(10); s.insert(30); s.insert(20);
std::cout << "Set (ordered by less): ";
for (std::set<int>::iterator it = s.begin(); it != s.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
return 0;
}
// Expected output:
// Sorted ascending: 1 2 3 5 8 9
// Elements < 5: 3
// Set (ordered by less): 10 20 30 40
Run command
g++ -std=c++98 -Wall -Wextra -o example less.cpp