Комментарии 9
Уже давно существуют широко известные в узких кругах ders::sh_ptr и ders::un_ptr.
По тестам производительности https://ders.by/cpp/norefs/norefs.html#4.1
ders::sh_ptr быстрее std::shared_ptr в 4-6 раз.
а sh_ptr с mp_allocator аж в 6-12!
ЗЫ Исходный код там же.
Это решение не переносимое, завязано на один конкретный компилятор и его внутреннюю реализацию stl, которая в следующей версии может измениться и код не будет работать.
А потом в приложении появятся потоки и оно с треском рухнет.
Вы забыли std:forward
Уже давно существуют широко известные в узких кругах ders::sh_ptr и ders::un_ptr.
По тестам производительности https://ders.by/cpp/norefs/norefs.html#4.1
ders::sh_ptr быстрее std::shared_ptr в 4-6 раз.
а sh_ptr с mp_allocator аж в 6-12!
ЗЫ Исходный код там же.
Надеюсь что ders dir.hpp не взрывается при кириллице, а то std::filesystem в MinGW кидает исключение при любых русских символах в пути
Обновитесь, по-моему в GCC 12.1 исправили.
UPD: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95048
Быстрый однопоточный std::shared_ptr в GCC