|
4 / 4 / 3
Регистрация: 23.10.2012
Сообщений: 233
|
|
Стоит ли использовать тернарный оператор, если всегда есть альтернативы в С ?04.07.2013, 00:55. Показов 11833. Ответов 85
Метки нет (Все метки)
Мне вот интересно , что скажут люди о Тернарном операторе, которые уже на С++ программируют немало.
Насколько он удобен, много ли экономит пространство кода и стоит ли его применять сильно часто или же тернарный оператор у многих не приживается в дальнейшем. Да не спорю придумали его наверное не зря, перед какими то задачи он может и удобен, но мне кажется что его используют мало людей
0
|
|
| 04.07.2013, 00:55 | |
|
Ответы с готовыми решениями:
85
Оператор идентичности - когда стоит использовать? Оператор gets() не хочет выполняться, если перед ним стоит scanf Как узнать есть ли фронтальная камера на устройстве и если есть, то использовать ее? |
|
870 / 529 / 149
Регистрация: 03.02.2013
Сообщений: 1,884
|
|||||||
| 04.07.2013, 12:08 | |||||||
0
|
|||||||
|
194 / 174 / 30
Регистрация: 10.07.2012
Сообщений: 800
|
||
| 04.07.2013, 14:01 | ||
|
0
|
||
|
Комп_Оратор)
|
|||||||||||||||||||||
| 04.07.2013, 15:49 | |||||||||||||||||||||
|
salam, а мне пример SatanaXIII понравился. Он улыбается, но серьёзно. К тому что сказал Croessmah и другие, он добавляет, что оператор if не поместится туда где тренарный чувствует себя нормально.
О терминологии в программировании ходят легенды и С++ не исключение. Тренарный "оператор" унаследован от Си и не является рудиментом. Ему цены нет. Но в Си он назывался оператором... Поэтому для совместимости и в терминологии тренарное выражение называется оператором. В книжных примерах обычно, он как и любое выражение являясь правым опрерандом операции присваивания заканчивается кавычкой. А выражение заканчивабщееся кавычкой это оператор:
А терминология... да бог с ней, главное понимать и всё. Вспомните "функция" (на деле - операто!) new названная так, чтобы new и free(действительно функция) могли называться функциями выделения памяти. И при этом operator new() - на деле, - функция)) Вот горбатый (в моём исполнении) пример того что говорил Croessmah, если я верно понял:
0
|
|||||||||||||||||||||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
||||||||||||||||||||||||
| 05.07.2013, 11:22 | ||||||||||||||||||||||||
![]() Бесконечный типа бинарный цикл в исполнении тринарного оператора
1) У меня а в конце равно 21. 2) На счет возвращаемого типа не очень понятно:
![]()
1) c присваиваем значение b 2) Смотрим не равно ли нулю получившееся значение 2.1) Если не равно в b записываем c 2.2) Если равно - в b записываем a b= (c=456) ? c : 123 b= 456 ? 456 : 123 b= 456
1
|
||||||||||||||||||||||||
|
|
|||||||
| 05.07.2013, 11:29 | |||||||
0
|
|||||||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 05.07.2013, 11:39 | |
|
0
|
|
|
|
||||||||
| 05.07.2013, 11:42 | ||||||||
0, 1, 0, 1,... во втором: 1, 0, 1, 0,...
0
|
||||||||
|
1181 / 894 / 94
Регистрация: 03.08.2011
Сообщений: 2,461
|
||
| 05.07.2013, 11:47 | ||
|
Thinker, откуда Вы взяли -1? Там 0 и 1.
0
|
||
|
|
|
| 05.07.2013, 11:57 | |
|
ИМХО тернарный оператор нужен там, где он уместен и не создает загромождения. И это точно не циклы и не в списке инициализации. Он уместен, например, когда нужно вернуть какое-то значение из функции или при выводе чего-то на экран. Т.е. там, где он виден, чтобы конструкция была короткой и понятной. Больше одного тернарного оператора в конструкции - уже малочитабельно. Вывод таков, что от души пользоваться им можно в небольших проектах, где запутаться будет сложно.
1
|
|
|
|
|
| 05.07.2013, 12:07 | |
|
Thinker, я знаю, а еще специально дописал в конце, что большее их использование возможно в небольших проектах. Ну, к Вам ведь относится
![]() Croessmah, + обязательно оператор "запятая"
1
|
|
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
||||||||||
| 05.07.2013, 12:09 | ||||||||||
0
|
||||||||||
|
|
||
| 05.07.2013, 12:59 | ||
|
Создание рекурсивной функции, возвращающей значение для вычисления наибольшего размера в одномерном массиве один товарищ так и не оценил прелести тернарного оператора. в постах #2 и #4 той темы видно, как меняется код программы. паскалевским программистам не понять, как здорово, что есть "? :"
0
|
||
|
|
|
| 05.07.2013, 13:04 | |
|
Thinker, ну, здесь компактно конечно. Но представьте себе проект в пару тыщ строк (которые в одной файле, не желаю конечно никому такого, но бывают ситуации). Вот кто-то читает его, изучает строки и тут где-то в середине кода такое...Я б не был равнодушным
![]() Вот в олимпиадных задачках да, можно. Добавлено через 31 секунду Не по теме: Croessmah, ну, только не много, оффтоп все ж))
0
|
|
| 05.07.2013, 13:04 | |
|
тернарный оператор Тернарный оператор Тернарный оператор Тернарный оператор Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|