std::flat_m...:value_comp(3)
okay so bestie, youβre on the std::flat_m...:value_comp(3) page from the C++ Standard Libary manual β yes, thatβs the exact spelling, no cap β and itβs literally all about std::flat_multiset::value_comp. itβs giving βtiny but important member functionβ energy π
β¨
β¨ NAME β¨
std::flat_multiset::value_comp β std::flat_multiset::value_comp
πΈ Synopsis πΈ
std::flat_multiset::value_compare value_comp() const; (since C++23)
so this one returns the function object that compares the values β and it is the same as key_comp. periodt. π
π Parameters π
(none) β literally no parameters, bestie. zero. nada. π«Ά
π Return value π
The value comparison function object. thatβs the whole vibe. π
β‘ Complexity β‘
Constant. β
π§ Example π§
okay so hereβs the example, run this code:
// Run this code
#include <iostream>
#include <flat_set>
#include <utility>
// Example module 97 key compare function
struct ModCmp
{
bool operator()(int lhs, int rhs) const
{
return (lhs % 97) < (rhs % 97);
}
};
int main()
{
std::flat_multiset<int, ModCmp> cont{1, 2, 3, 4, 5};
// Same behaviour as key_comp()
auto comp_func = cont.value_comp();
for (const int val{100}; const int key : cont)
{
const bool before = comp_func(key, val);
const bool after = comp_func(val, key);
std::cout << "Key (" << key << ") ";
if (!before && !after)
std::cout << "equivalent to key (" << val << ")\n";
else if (before)
std::cout << "goes before key (" << val << ")\n";
else if (after)
std::cout << "goes after key (" << val << ")\n";
else
std::unreachable();
}
}
π¬ Output π¬
and the output is giving:
Key (1) goes before key (100)
Key (2) goes before key (100)
Key (3) equivalent to key (100)
Key (4) goes after key (100)
Key (5) goes after key (100)
π See also π
key_compβ returns the function that compares keys (public member function)
mwah π β this page came from http://cppreference.com, version/date 2024.06.10, on std::flat_m...:value_comp(3). catch you later, bestie π«Άβ¨
π¦ where this page comes from
- nixpkgs unstable: stdman 2024.07.05
- opensuse-leap 16.0: stdman 2024.07.05-bp160.1.9 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms