Сокращение шаблона чрезмерно увеличивается в размерах с наследованием

У кого-либо есть опыт при сокращении чрезмерного увеличения размера кода шаблона посредством наследования?

Я колеблюсь, переписывая наши контейнеры этот путь:

class vectorBase
{
  public:
    int size();
    void clear();
    int m_size;
    void *m_rawData;
    //....
};

template< typename T > 
class vector : public vectorBase
{
    void push_back( const T& );
    //...

};

Я должен сохранить максимальную производительность при сокращении времени компиляции. Я также задаюсь вопросом, почему Стандартные реализации Библиотеки не делают использования этот подход.

10
задан Jon Harper 29 October 2019 в 12:23
поделиться