Grösse von enums



  • Fast. Funktionen kannst du nicht zur Kompilierzeit ausführen, deshalb greift man zu Metafunktionen (Klassen, die zur Metaprogrammierung verwendet werden).

    enum A {...};
    enum B {...};
    
    template <typename Enum>
    struct EnumSize;
    
    template <>
    struct EnumSize<A>
    {
        static const size_t value = 4;
    };
    
    template <>
    struct EnumSize<B>
    {
        static const size_t value = 5;
    };
    


  • Nexus schrieb:

    Fast. Funktionen kannst du nicht zur Kompilierzeit ausführen, deshalb greift man zu Metafunktionen (Klassen, die zur Metaprogrammierung verwendet werden).

    enum A {...};
    enum B {...};
    
    template <typename Enum>
    struct EnumSize;
    
    template <>
    struct EnumSize<A>
    {
        static const size_t value = 4;
    };
    
    template <>
    struct EnumSize<B>
    {
        static const size_t value = 5;
    };
    

    MERCI!!!


Anmelden zum Antworten