|
|
||||||||
auto в C++: развитие или деградация?29.08.2015, 15:18. Показов 4678. Ответов 59
Метки нет (Все метки)
0
|
||||||||
| 29.08.2015, 15:18 | |
|
Ответы с готовыми решениями:
59
Деградация общество или что-то еще
|
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||
| 30.08.2015, 04:23 | ||||||||
|
я вел речь о том, что она - статическая. когда речь заходит о статике, возможности манипулирования типами становятся особенно критичными. сишка например - убогий язык в этом отношении. ----------------------------------------------- по поводу сильной/слабой - язык поддерживает оби возможности. можно запрещать неявное приведение. можно не запрещать. даже более того, с++ поддерживает динамическую типизацию:
где то на хабре есть статья, в которой автор приводит примеры, иллюстрирующие, что мультипарадигменный с++ умеет все эти различные "классификации" типизаций. а достигается это благодаря мощнейшей системе типов, которая позволяет как угодно манипулировать ими в статике (метапрограммирование) именно эту систему типов я и называю "системой изнасилования типов". Добавлено через 1 минуту сейчас гляну, что за фрукт... Добавлено через 26 минут глянул: не мэйнстрим. к тому же функциональная хрень. может быть у него действительно мощная система типов, однако на вскидку я ничего такого в примерах не разглядел. а изучать язык на котором пишут полторы калеки, что бы оценить её - как то влом.
1
|
||||||||
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
||||||
| 30.08.2015, 12:13 | ||||||
|
Не по теме:
Кликните здесь для просмотра всего текста
Это хоть как-то можно натянуть на "аргумент от специалиста"? Это больше похоже на лулзы от Дурнева.
0
|
||||||
|
|
|||
| 30.08.2015, 12:23 [ТС] | |||
|
И уже не понято вы говорите от "выводе" какой на данный момент существует в языке С++ (а конкретно про auto), или о каком-то другом с созвездия Андромеда. Аргументов что это не только "сахар" лично от вас я вообще не услышал. Только витание в облаках и филосовствования на тему быть или не быть.
0
|
|||
|
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
|
||
| 30.08.2015, 12:29 | ||
|
Не по теме: Я не виноват что мне попался тупой "следователь". Объективно тупой. Реально. Это даже не сойдет за оскорбление, это факт. Вот Вы плюсист. Скажите мне есть в плюсах вывод типов или нет. Это язык с которым Вы работаете ежедневно и обязаны его знать. Не по теме: Хотя бы его, как минимум. Добавлено через 2 минуты Не по теме:
Добавлено через 38 секунд
0
|
||
|
|
||||
| 30.08.2015, 12:39 [ТС] | ||||
|
Если вы путаетесь, если вы не можете говорить конкретно что подразумевает под теми или иными вещами о которых идет речь в теме, то проблема в вас, а не в комто другом. А так заходить в тему что бы оставить мессадж тип "С++ гавно, потому что гавно" кудо больше говорит о культуре и ваших умственных способностях.
0
|
||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 30.08.2015, 13:09 | ||
|
и кто тут рассуждает на темы концепций ЯП? если только вы имели ввиду: полторы господина castorsky. --------------------------------------------------------------- что касается системы типов: с++ оопнутый, к тому же императивный (по большей части). здесь манипуляция с типами особенно критична в контексте классов. а это означает: возможность влиять на иерархию классов. а это означает: вывод типов времени компиляции, и в зависимости от, дальнейшее построение иерархии. при этом, с++ умеет метапрограммирование как в функциональном, так и в императивных стилях. примечательно, что его дальнейшее развитие пошло по императивному пути (constexpr)
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 30.08.2015, 13:45 | ||
|
auto - действительно лишь сахар. но это полезный сахар: позволяет писать код в утиной нотации, когда фактический тип не имеет значения ни для логики выполнения, ни для чтения самого кода.
0
|
||
|
|
|||
| 30.08.2015, 14:34 [ТС] | |||
|
Типа то выводятся все равно во время компиляции, а не исполнения. Добавлено через 34 минуты
0
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 30.08.2015, 14:51 | ||
|
достаточно понимать: чем бы оно ни было, но оно умеет инкремент. а для того, что бы это понять, знать тип не обязательно.
0
|
||
|
|
|||||||
| 30.08.2015, 15:05 [ТС] | |||||||
|
(например нам не удалось сменить вектор на список ибо он не поддерживает концепцию, но мы пока этого не знаем) нужно открывать контейнер - смотреть что за итератор он использует и только потом окрывать класс итератора что бы убидится что в нем есть инкремент... Т.е когда возникают "проблемы" то неплохобы видеть что за типы используются. К примеру:
Тут явное усложнение "навигации" по коду. Понятно что это конечно вопрос вменяемого использования...
0
|
|||||||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||
| 30.08.2015, 15:36 | ||
|
я запускаю компиляцию, и через несколько секунд узнаю удовлетворяют ли типы потребностям бизнес-логики. смотреть "что там за контейнер" нужно лишь в случае проблем. но в случае проблем, смотреть придется в любом случае, что с auto, что без него. единственное: с auto меньше нужно писать/переписывать буковок.
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||
| 30.08.2015, 15:41 | ||||||||
не понятным стороннему глазу остается исключительно 'a' потому что нечитабельное имя. а вот вся остальная цепочка - обратите внимание: используется вывод типов. но все понятно: некий виджет. берем у него 1 ребенка. у ребенка берет 2 предмет. что то делаем с этим предметом.... при этом я понятия не имею, какова природа представленных типов. но для понимания логики происходящего мне это и не нужно. Добавлено через 1 минуту вместо того, что бы просто прочитать выхлоп компилятора на английском.
0
|
||||||||
|
|
|||
| 30.08.2015, 15:46 [ТС] | |||
|
Добавлено через 1 минуту
0
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
|||||||
| 30.08.2015, 15:46 | |||||||
|
вот код:
что у него есть doModal. он просто есть. точно так же как есть вся эта цепочка. потому что такова запись в исходном коде.
0
|
|||||||
|
|
||
| 30.08.2015, 15:48 [ТС] | ||
|
К примеру задача сменить show() на showModal() ? Для этого нужно знать что там за класс.
0
|
||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||
| 30.08.2015, 15:50 | ||||||||
|
читабельные имена позволяют нам понимать логику проиходящего. а вовсе не их фактические типы. если мы видим:
мы просто знаем - вот сейчас будет диалог с пользователем "новая игра". Добавлено через 1 минуту то есть сидеть, и вникать.
0
|
||||||||
|
99 / 70 / 13
Регистрация: 15.12.2013
Сообщений: 463
|
||
| 30.08.2015, 15:50 | ||
|
0
|
||
|
|
|||
| 30.08.2015, 15:57 [ТС] | |||
|
Разбирать всю цепочку или смотреть сразу код AbstaсtDialog. Ну ли к примеру посмотреть итератор вектора и сравнивать его с итератором однонаправленного списка что бы понять что нельзя подставлять список в ф-цию из-за того что итератор неподдерживает декримент. Добавлено через 3 минуты
0
|
|||
|
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
|
||||||||
| 30.08.2015, 16:03 | ||||||||
|
смотрите:
рассматривать всю цепочку для этого не обязательно. и это действие "смотреть Item" вы будете выполнять в любом случае, так или иначе, если будет подобная ошибка. Добавлено через 3 минуты когда вы подсунете итератор списка, и выяснится, что он не поддерживает какой то функционал, то вы сразу же об этом узнаете. компилятор напишет вам это английским текстом. диагностируются подобные ошибки точно так же, что с auto, что без него.
0
|
||||||||
| 30.08.2015, 16:03 | |
|
Деградация рейда 1 Деградация программистов Деградация системы и программ Cannot re-assign auto-global variable _POST in или Warning: Invalid argument supplied for foreach() in
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|
|
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml,
в чате форсили функторы модулей как суперфичу.
Пытаясь отдуплить концепт, наткнулся на тутор с простым примером.
А главный принцип обучения от. . .
|
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
|
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|