jeudi 1 novembre 2018

Accessing static data through inheritance of a template template parameter?

template
<
    template <typename, typename>
        class storage_t,
    typename T = storage::UnknownType,
    typename is_allocated = std::false_type
>
class Example_Buffer
: public Buffer<storage_t, T, is_allocated> {
    constexpr ExampleBuffer(
        typename storage_t<T, is_allocated>::iterator it) {}
};

Example_Buffer<...> inherits from Buffer<...>. Buffer<storage_t, T, is_allocated> inherits from storage_t<T, is_allocated>. storage_t<...> includes typedefs and static constexpr data. Is there a way to access these typedefs and static constexpr data in the constructor of Example_Buffer through inheritance? (through inheritance, that is, not using storage_t<T, is_allocated>? It feels slightly odd to use this syntax twice within the same class.

Feel free to ask if I need to elaborate.

Aucun commentaire:

Enregistrer un commentaire