LINUX.ORG.RU

История изменений

Исправление vertexua, (текущая версия) :

я активно использовал абстрактные классы

This. Смотря для чего, но всякие virtual вещи - в С++ это не очень любят в высокопроизводительном коде. Обычно можно обойтись без, причем вполне с ООП, вполне в С++ стиле. Например вместо того чтобы в один класс передать другой в виде интерфейса, тип второго используют как параметр шаблона первого

Вот плохой код для производительности

class Dep: public DepInterface {...} 

class MyClass {
   MyClass(std::unique_ptr<DepInterface> dep) ...
};

Вот хороший

template<class DepT>
class MyClass {
   MyClass(std::unique_ptr<DepT> dep) ...
};

Во втором случае если ты вызовешь потом метод dep миллиард раз, то будет значительно быстрее.

Исходная версия vertexua, :

я активно использовал абстрактные классы

This. Смотря для чего, но всякие virtual вещи - в С++ это не очень любят в высокопроизводительном коде. Обычно можно обойтись без.