foo() = 0;
                  
                  
                  };
                  
                  
                  
                  
                  
                  template <typename T>
                  
                  
                  class DerivedOne : Base<T> {
                  
                  
                      T foo() override {
                  
                  
                          //...
                  
                  
                          return T{};
                  
                  
                      }
                  
                  
                  };
                  
                  
                  
                  
                  
                  template <typename T>
                  
                  
                  class DerivedTwo : Base<T> {
                  
                  
                      T foo() override {
                  
                  
                          //...other
                  
                  
                          return T{};
                  
                  
                      }
                  
                  
                  };
                  
                  
                  
                  
                  
                   Добной ночи, такой подход является плохим дизайном?  Base интрфейст, который потом возвращается из фабрики. Смущает virtual в шаблоне
                  
                  
                
Только про деструктор не забудьте - виртуальный или protected
Обсуждают сегодня