Запитання з тегом «switch-statement»

3
Перерва на випадок за замовчуванням в комутаторі
Мене трохи спантеличує всякий раз, коли я не включаюсь breakпісля останнього випадку, часто default. switch (type) { case 'product': // Do behavior break; default: // Do default behavior break; // Is it considered to be needed? } breaks єдина мета, наскільки я розумію, не допустити проходження коду через іншу частину …

17
Навіщо використовувати підхід OO замість гігантського оператора “switch”?
Я працюю в магазині .Net, C # і в мене є колега, який наполягає на тому, що ми повинні використовувати гігантські заяви Switch в нашому коді з великою кількістю "випадків", а не більше об'єктно-орієнтованих підходів. Його аргумент послідовно сходить до того, що оператор Switch збирається в "таблицю стрибків процесора" і …

12
Уникати вуду "goto"?
У мене є switchструктура, яка має декілька справ для вирішення. switchПрацює над enumякою ставить питання про дублювання коду через об'єднані значення: // All possible combinations of One - Eight. public enum ExampleEnum { One, Two, TwoOne, Three, ThreeOne, ThreeTwo, ThreeOneTwo, Four, FourOne, FourTwo, FourThree, FourOneTwo, FourOneThree, FourTwoThree, FourOneTwoThree // ETC. …

8
Чи потрібно додати регістр за замовчуванням під час використання корпусів комутаторів?
Під час недавнього перегляду коду мене попросили помістити регістри defaultу всі файли, де б switchне використовувався блок, навіть якщо в цьому нічого робити default. Це означає, що я маю поставити defaultсправу і нічого не писати в ній. Це правильно робити? Якій меті це послужило б?

10
Чи варто використовувати оператори перемикання або довго, якщо… інший ланцюжок?
Часто, коли я чую про заяву перемикача, його відкладають як спосіб заміни довгих, якщо ... інакше ланцюги. Але здається, що коли я використовую оператор переключення, я пишу більше коду, який я б просто писав, якби ... ще. У вас також є інші проблеми, такі як збереження всіх змінних для всіх …

8
Чому Clang / LLVM попереджає мене про використання за замовчуванням у операторі комутатора, де охоплені всі перелічені випадки?
Розглянемо наступне твердження enum and switch: typedef enum { MaskValueUno, MaskValueDos } testingMask; void myFunction(testingMask theMask) { switch (theMask) { case MaskValueUno: {}// deal with it case MaskValueDos: {}// deal with it default: {} //deal with an unexpected or uninitialized value } }; Я програміст Objective-C, але це я написав …

6
Виписки рефакторингу і чи існує взагалі реальна користь для виписок?
Я читав цю статтю і цікавився, чи ми можемо позбутися всіх операторів комутації, замінивши їх на Словник чи Фабрику, щоб у моїх проектах взагалі не було заяв про перемикання. Щось не дуже склалося. Питання полягає в тому, чи мають оператори перемикачів реально використані чи ми продовжуємо їх замінювати або словником, …

5
Кілька аргументів у виклику функції проти одного масиву
У мене є функція, яка приймає набір параметрів, потім застосовує їх як умови до SQL-запиту. Однак, поки я віддав перевагу одному масиву аргументів, що містить самі умови: function searchQuery($params = array()) { foreach($params as $param => $value) { switch ($param) { case 'name': $query->where('name', $value); break; case 'phone': $query->join('phone'); $query->where('phone', …

6
Карта функцій проти оператора switch
Я працюю над проектом, який обробляє запити, і до цього запиту є два компоненти: команда та параметри. Обробник для кожної команди дуже простий (<10 рядків, часто <5). Є щонайменше 20 команд, і, ймовірно, буде більше 50. Я придумав пару рішень: один великий перемикач / інше на команди карта команд до …

8
Яка перевага від вмикання рядків у Java 7?
Коли я починав програмувати на Java, мене відлякував той факт, що заяви переключення не брали рядків. Тоді, використовуючи Enums, я зрозумів переваги, які ви отримуєте з ними, а не передаючи необроблені значення - безпеку типу (що полегшує рефакторинг) та також зрозумілість для інших розробників. Я намагаюся думати про ситуацію, коли …

2
Чому мови не використовують явні заяви про перехід на комутатор?
Я читав Чому ми повинні використовувати breakв switch? , і це змусило мене замислитись про те, чому дозволено неявне проходження на деяких мовах (таких як PHP та JavaScript), поки немає підтримки (AFAIK) для явного проходу. Це не так, як потрібно було б створити нове ключове слово, як це continueбуло б …


4
Перемикайтеся на поліморфізм при роботі з моделлю та видом
Я не можу знайти краще рішення своєї проблеми. У мене є контролер подання, який представляє список елементів. Ці елементи є моделями, які можуть бути екземплярами B, C, D тощо, і успадковуватимуся A. Отже, у цьому контролері перегляду кожен елемент повинен перейти на інший екран програми та передавати деякі дані, коли …

7
Реалізація стану об'єкта мовою ОО?
Мені було запропоновано деякий код Java, який імітує гонку автомобілів, яка включає реалізацію базової машини. Це не класична державна машина інформатики, а просто об'єкт, який може мати декілька станів і може перемикатися між своїми станами на основі ряду обчислень. Щоб описувати лише проблему, у мене є клас Car, з вкладеним …

6
Як зменшити перемикач у операторі комутатора?
Тож я створюю метод створення лінії вітання для базування двох людей із бази даних. Існує чотири параметри: два імені ( name1і name2) та два статі ( genderі gender2). Для кожної гендерної комбінації у мене є різний результат. Наприклад: якщо гендер 1 є M(чоловік), а також гендер 2 M, результат повинен …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.