Вопросы к Поиску с Алисой
Разница между обычным оператором switch и его современной формой с инициализацией переменной заключается в том, что в обычной форме оператор switch передаёт управление непосредственно в выполняемый оператор в теле, минуя все строки, содержащие инициализации. {7-host}
Современная форма с инициализацией переменной, поддерживаемая начиная со стандарта C++17, позволяет определять переменную в конструкции switch для различных промежуточных вычислений. metanit.com При этом переменная доступна только в рамках этой конструкции switch. metanit.com
Таким образом, основное различие заключается в том, что обычный оператор switch передаёт управление, а современная форма с инициализацией переменной позволяет определять и работать с переменными внутри оператора switch.
Например, чтобы инициализировать переменную в операторе switch, её нужно объявить в новой области видимости этой конструкции. www.educative.io ru.stackoverflow.com