std::multiset::value_comp(3)

πŸ“¦ version 2024.07.05, in nixpkgs unstable, opensuse-leap 16.0

πŸ’– std::multiset::value_comp(3) πŸ’–

okay so welcome to the std::multiset::value_comp(3) page from the C++ Standard Libary β€” yes bestie, that’s the manual name folded right in near the top, and we’re gonna get through this together 🫢✨


🌸 NAME 🌸

std::multiset::value_comp - std::multiset::value_comp

like… the name is literally the name, no cap πŸ’…


πŸ¦‹ Synopsis πŸ¦‹

std::multiset::value_compare value_comp() const;

Returns the function object that compares the values. It is the same as key_comp. πŸŽ€


πŸŽ€ Parameters πŸŽ€

  • (none) β€” no arguments, no drama, periodt πŸ’–

✨ Return value ✨

The value comparison function object. πŸ¦‹


πŸ’… Complexity πŸ’…

Constant. ⭐


πŸ”₯ Example πŸ”₯

       // Run this code

        #include <iostream>
        #include <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::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: πŸ–₯️

        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) πŸ‘‘

cute little sign-off, bestie: source/version is http://cppreference.com, date is 2024.06.10, and the page is std::multiset::value_comp(3) β€” byeee πŸ’œπŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from