Pull to refresh

Comments 3

Очередной раз в С++ придумали, как сделать новую фичу на основе уже существующих, вообще для этого не задуманных. Это же почти static exceptions, которые может быть будут в следующих стандартах. И не поймите меня не правильно, мне очень понравилась идея и я даже ею воспользуюсь при необходимости, но почему-то весь С++ состоит из таких вот вещей, что настораживает.

Есть ли бенчмарки или разбор того, как компилятор это оптимизирует? Теоретически это всё сводится примерно к тому же коду, что был на ифах, но осиливает ли компилятор такие оптимизации? Не вносят ли корутины слишком много накладных расходов?

Есть ли бенчмарки или разбор того, как компилятор это оптимизирует? Теоретически это всё сводится примерно к тому же коду, что был на ифах, но осиливает ли компилятор такие оптимизации? Не вносят ли корутины слишком много накладных расходов?

Сделать из сопрограмм do-нотацию не нова, вопросы оптимизации компилятором обсуждались на CppCon 2021. Если кратко: при должно усердии можно заставить компилятор всё оптимизировать до уровня обычных if. Но при сборке без оптимизации, конечно, будет тормозить.

Вот от Sy похожая тема:

https://devblogs.microsoft.com/cppblog/cpp23s-optional-and-expected/

Sign up to leave a comment.

Articles