LINUX.ORG.RU

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

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

все конечно круто, но разве в std::function под капотом не тот же самый type erasure с вызовом виртуальных методов?

Ну и царь говорит, что static dispatch лучше:

// правда такой подход, что бы о нём не говорила адепты, такое же говно как и наследование. Проблема фатальна - он затирает типы. В скриптухе на типы покласть, но не в С++.
// По этой причине в С++ везде где можно используется статический диспатч, а где нельзя - почти везде он заменяется на вариант, который типы не затирает. 

а вот его ответ: https://pastebin.com/raw/UvRvt563

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

все конечно круто, но разве в std::function под капотом не тот же самый type erasure с вызовом виртуальных методов?

Ну и царь говорит, что static dispatch лучше:

// правда такой подход, что бы о нём не говорила адепты, такое же говно как и наследование. Проблема фатальна - он затирает типы. В скриптухе на типы покласть, но не в С++.
// По этой причине в С++ везде где можно используется статический диспатч, а где нельзя - почти везде он заменяется на вариант, который типы не затирает.