и во время компиляции
https://quick-bench.com/q/P-26ed1ri8uKDNQm506aa4_GJBE
Почему вы не хотите сделать параметром шаблона сразу pointer to member?
Да проще 10-20 лямбда написать, и понятнее. Он просто не понимает, что хочет невозможное
Все равно отстает он лямбды
https://quick-bench.com/q/OlPBJRN4YQmB1dFGnROsUH7pFaU если я нигде не ошибся ...
Круто, спасибо! А я всё сохранял в поля указатель)
https://quick-bench.com/q/F1H4o-Pi93vBs1HWV3EnvP7nQfM И вот вам gcc для сравнения, что на это полагаться так себе.
Без поля всё равно хорошо работает
Ну на gcc и с полем неплохо. Так что эти игры в бенчмарки надо либо не начинать, либо очень хорошо представлять, что там ожидается увидеть.
Там с полем нечестно, он конструируется не в цикле.
Конечно. А зачем вы 100 раз создаёте один и тот же объект? Его ещё и constexpr по хорошему надо делать.
По моему это идея бенча делать создание в цикле, в реальных проектах цикла вообще не будет а будет просто создание для sort
Не должно быть там никакого создания. Это должен быть consteval объект, создающийся только на этапе компиляции.
У меня нет consteval, а так придется писать сортировку в 2 строки, а вообще мне главное не хуже лямбды)
Обсуждают сегодня