Разлика между if-else и превключване

Автор: Laura McKinney
Дата На Създаване: 3 Април 2021
Дата На Актуализиране: 5 Може 2024
Anonim
Река в Сан Фиерро, которой нет. Где должны были стоять барьеры между городами в GTA SAN ANDREAS?
Видео: Река в Сан Фиерро, которой нет. Где должны были стоять барьеры между городами в GTA SAN ANDREAS?

Съдържание


„Ако иначе“ и „превключвам“ и двете са изявления за избор. Извлеченията за избор прехвърлят потока на програмата към конкретния блок от изявления въз основа на това дали условието е "вярно" или "невярно". Основната разлика между операторите if-else и switch е, че операторът if-else „избира изпълнението на операторите въз основа на оценката на израза в if операторите“. Изключенията на оператора „избира изпълнението често на базата на команда от клавиатурата“.

  1. Сравнителна диаграма
  2. дефиниция
  3. Ключови разлики
  4. заключение

Сравнителна диаграма

Основа за сравнениеако-другоключ
ОсновенКой оператор ще бъде изпълнен зависи от изхода на израза вътре, ако оператор.Кое изявление ще бъде изпълнено се решава от потребителя.
изразяванеif-else оператор използва множество оператор за множество възможности за избор.switch оператор използва един израз за множество избори.
Тестванеif-else тест за равенство, както и за логическо изразяване.превключвайте тест на оператора само за равенство.
оценкаако операторът оценява цяло число, символ, показалец или тип с плаваща запетая или булев тип.превключващият оператор оценява само знака или цяло число.
Последователност на изпълнениетоИли ако операторът ще бъде изпълнен, или в противен случай се изпълнява оператор.инструкцията за превключване изпълнява един случай след друг, докато не се появи декларация за прекъсване или се достигне края на оператора на превключвателя.
Изпълнение по подразбиранеАко условието вътре, ако операторите са неверни, тогава по подразбиране командата else се изпълнява, ако е създадена.Ако състоянието вътре в операторите за превключване не съвпада с нито един от случаите, за този случай операторите по подразбиране се изпълняват, ако са създадени.
РедактиранеТрудно е да се редактира операторът if-else, ако се използва вложен израз if-else.Лесно е да редактирате случаите за превключване, тъй като те се разпознават лесно.

Определение на if-else

Изреченията if-else принадлежат на оператори за избор в OOP. Общата форма на изявленията if-else е следната


ако (израз) {декларация (и)} друго {декларация (и)}

където „ако“ и „друго“ са ключовите думи, а отчетите могат да бъдат единично изречение или блок от изрази. Изразът оценява като "вярно" за всяка ненулева стойност, а за нула - "невярно".
Изразът, ако операторът може да съдържа цяло число, символ, показалец, плаваща запетая или може да бъде булев тип. Операторът else е незадължителен в оператора if-else. Ако изразът се върне вярно, изразите вътре, ако операторът се изпълни, и ако той върне невярно, се изпълняват отчетите вътре в оператора else и, в случай че не е създадено друго, не се извършва действие и контролът на програмата изскача на изявление if-else.

Позволява ни да разберем с пример.

int i = 45, j = 34; ако (i == 45 & j == 34) {cout << "i =" <

Дефиниция на превключвател

Изключенията на превключвателя са операция за избор на множество избори. Общата форма на превключвателя е следната

превключвател (израз) {case константа1: оператор (и); прекъсване; случай константа2: оператор (и); прекъсване; случай константа3: декларация (и); прекъсване; , , декларация (и) по подразбиране; }

Когато изразът оценява цяло число или символни константи. Изразът тук само оценява равенството. Изразът се проверява спрямо константите, присъстващи в декларациите по случая. Ако се намери съвпадение, операторите, свързани с този случай, се изпълняват, докато не се получи „прекъсване“. Тъй като декларацията за прекъсване е незадължителна в операторите на случая, ако отказът за прекъсване не присъства тогава, изпълнението не спира до края на оператора за превключване.
Изразът съдържа само един израз. Операторът за превключване често използва команда от клавиатурата, за да избере един от множеството оператори на регистър.

int c; cout << "изберете стойността от 1 до 3"; CIN >> аз; превключвател (i) {случай 1: cout << "избираш тъмен шоколад"; прекъсване; случай 2: cout << "избираш бонбони"; прекъсване; случай 3: cout << "избираш lollypop"; прекъсване; , , cout по подразбиране << "не избираш нищо"; }

Тук стойността на „i“ ще реши кой случай трябва да бъде изпълнен, ако потребителят даде стойността на „i“, различна от 1, 2 или 3, тогава случаят по подразбиране се изпълнява.

  1. Изразът вътре ако операторът решава дали да изпълни операторите вътре, ако блок или под друг блок. От друга страна, изразът вътре в оператора за превключване решава кой случай да се изпълни.
  2. Можете да имате множество if оператор за многократен избор на изявления. В превключване имате само един израз за множеството възможности за избор.
  3. If-esle операцията проверява за равенство, както и за логическо изразяване. От друга страна, превключвайте проверките само за равенство.
  4. Изразът if оценява цяло число, символ, показалец или тип с плаваща запетая или булев тип. От друга страна, командата за превключване оценява само символа или цяло число тип данни.
  5. Последователността на изпълнението е като всяко изречение под, ако блокът ще се изпълни или ще се изпълняват операции под друго блоково изявление. От друга страна, изразът в командата switch решава кой случай да се изпълни и ако не приложите декларация за прекъсване след всеки случай, той ще се изпълнява до края на оператора на превключвателя.
  6. Ако изразът вътре, ако се окаже невярно, ще бъде изпълнен оператор вътре в блока на друг. Ако изразът вътре в оператора switch се окаже невярно, тогава се изпълняват операции по подразбиране.
  7. Трудно е да редактирате изявления if-else, тъй като е досадно да проследите къде се изисква корекцията. От друга страна е лесно да се редактират оператори за превключване, тъй като те са лесни за проследяване.

Заключение:

Компонентът за превключване е лесен за редактиране, тъй като е създал отделните случаи за различни оператори, докато в вложени операции if-else става трудно да се идентифицират отчетите, които ще бъдат редактирани.