ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В C++ (4-Е ИЗДАНИЕ) (часть 3) онлайн
Сравнение switch и if...else
Когда лучше использовать последовательность if...else (или else...if), а когда — switch? При использовании else...if можно проверять значения разных не связан- ных друг с другом переменных, причем сравнения могут быть любой степени сложности:
if ( SteamPressure*Factor > 56 )
// операторы else if ( Voltageln+VoltageOut < 23000)
// операторы else if ( day == Thursday )
// операторы else // операторы
В операторе switch все ветвления используют одну и ту же переменную; един- ственная возможность проверки в таком ветвлении — сравнение значения пере- менной с заданной константой. В частности, невозможно выполнить такую про- верку:
case а<3: //действия break;
Совместно с case могут использоваться константы, имеющие либо целый, ли- бо символьный тип, например 3 или 'a', или же константные выражения, приво- дящие к вычислению значения одного из указанных типов, например 'a'+32.
Если хорошо усвоить эти условия, написание конструкций switch становится простым и доступным для понимания, switch рекомендуется использовать там, где это возможно, особенно в случаях, когда дерево ветвлений содержит много ветвей.
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
