![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Форумчанин
Регистрация: 15.06.2007
Сообщений: 182
|
![]()
Покажите пожалуйста как это делается с case
|
![]() |
![]() |
![]() |
#12 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
> сравнивать не строки, а сумму кодов их символов
да, тоже вариант. Или контрольную сумму: Код:
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
Последний раз редактировалось veniside; 04.07.2011 в 21:37. |
![]() |
![]() |
![]() |
#13 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]() Цитата:
Нормальные люди в случае большого числа проверок используют ассоциативные контейнеры/коллекции и иже с ними. Назовите мне хоть один пример необходимости длинного case/if ... else if. Сравнение со строками - это в коде сравнение с магическими словами? С кучей магических слов? И наверняка эти слова будут по коду повторяться? Последний раз редактировалось pu4koff; 04.07.2011 в 21:41. |
|
![]() |
![]() |
![]() |
#14 |
Старожил
Регистрация: 26.04.2008
Сообщений: 2,645
|
![]()
На счёт квантовых материй
![]() |
![]() |
![]() |
![]() |
#15 | |||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,542
|
![]() Цитата:
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 04.07.2011 в 21:45. |
|||
![]() |
![]() |
![]() |
#16 |
Форумчанин
Регистрация: 15.06.2007
Сообщений: 182
|
![]()
Спасибо большое всем. Вопрос решён.
evg_m, да, вы правы, просто неудачно привел пример. |
![]() |
![]() |
![]() |
#17 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
> инструкция case полностью идентична ...else if
это в описании языка она идентична, а в скомпилированном виде разница там бывает весьма заметна ) > и нужна программисту только для удобства при написании кода а компилятору для удобства оптимизации > Назовите мне хоть один пример необходимости длинного case/if ... else if. ну, например, на сервер приходит трехсимвольная команда от клиента. команд много, скажем, 1000.
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
Последний раз редактировалось veniside; 04.07.2011 в 21:50. |
![]() |
![]() |
![]() |
#18 | |
БохЪ
Форумчанин
Регистрация: 30.09.2009
Сообщений: 724
|
![]() Цитата:
Код:
![]()
В планах порабощение вселенной...
Последний раз редактировалось zumm; 04.07.2011 в 21:53. |
|
![]() |
![]() |
![]() |
#19 | |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,087
|
![]() Цитата:
это минимум 1000 строк кода, которые вызывают нужные функции. Это получается функция/метод класса в тысячу строк... ужас... Такое обычно реализуется посредством массивов или других коллекций. Нормальные люди не пишут 1000 case. Даже некоторые оптимизаторы некоторых компиляторов некоторых языков умеют заменять case на отсортированный массив, что очень сильно ускоряет поиск нужной ветки программы. |
|
![]() |
![]() |
![]() |
#20 |
Старожил
Регистрация: 03.01.2011
Сообщений: 2,508
|
![]()
> умеют заменять case на отсортированный массив
так это и есть задача компилятора, пусть думает, как лучше такой case замутить, массивом, коллекцией или ещё каким-то встроенным средством нового процессора, чё у программиста голова должна болеть? ) > получается функция/метод класса в тысячу строк... ужас... если ужас красиво оформлен, имхо, ничё страшного )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
|
![]() |
![]() |