Russian Qt Forum
Ноябрь 21, 2024, 23:58
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Разное
>
Говорилка
>
c vs c++
Страниц:
1
2
[
3
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: c vs c++ (Прочитано 19290 раз)
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: c vs c++
«
Ответ #30 :
Ноябрь 11, 2019, 06:58 »
Цитата: Azazello от Ноябрь 10, 2019, 23:42
Код:
ещё 57 проверок
типа......
А где же "благодать" что Вы говорили в стартовом посте?
"С" не любят потому что он резко ограничивает возможности говнокодинга, все должно быть сделано аккуратно и скрупулезно. Зато на плюсах... Хирак - вот и контейнер, а то и пяток-десяток. Нужны они или как - та кто там будет думать если все так дешево и доступно. А уж std - рай говнокодера, "фишку" выучить и тыкать повсеместно (закрепляя заученное).
Цитата: Azazello от Ноябрь 10, 2019, 23:42
Даже определение std::unique_ptr(e,someOperationFree) очень упрощает этот сишный код
А что это упрощает? Ну облегчает удаление, а фиксация ошибки (printf в примере) и передача упр-я (return в примере) как были - так и остались. Понятно что хочется и это списать на "устаревший С" и ни хрена не проверять, ведь так (намного) легче
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: c vs c++
«
Ответ #31 :
Ноябрь 11, 2019, 10:21 »
Цитировать
"С" не любят потому что он резко ограничивает возможности говнокодинга, все должно быть сделано аккуратно и скрупулезно.
Чо?
Да C разрешает все, что угодно. Поэтому и говнокодинга на нем в разы больше, чем на плюсах.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: c vs c++
«
Ответ #32 :
Ноябрь 11, 2019, 13:02 »
Цитата: Igors от Ноябрь 10, 2019, 16:19
В C API считается хорошим тоном проверять все указатели на null. Как достичь того же на плюсах? Просто сравнение this нехорошо, о чем шланг и говорит.
На плюсах можно использовать штуки типа gsl::not_null, тогда можно не проверять всё подряд на null.
Записан
Пока сам не сделаешь...
Azazello
Самовар
Offline
Сообщений: 103
Re: c vs c++
«
Ответ #33 :
Ноябрь 11, 2019, 15:54 »
Цитата: Igors от Ноябрь 11, 2019, 06:58
А где же "благодать" что Вы говорили в стартовом посте?
Так это и есть благодать! Какое там, ты среди этого бреда незадумываясь копипастишь все подряд, плевать как выглядит, плевать что превращается в простыню, плевать что никто в здравом уме никто с этим не разберется. Нужно, выдергнем из мусора что нужно.
Ну ладно, берем открывам любой исходник С++ и рядом С. Смотрим.
Как для вас не знаю, у меня кодинг по мере роста проекта начинает замедлятся в експотенциальной прогрессии . Больше начинает тянуть "архитектура" - от выбора контейнера и именами, заканчивая компоновкой класса.
Записан
Azazello
Самовар
Offline
Сообщений: 103
Re: c vs c++
«
Ответ #34 :
Ноябрь 11, 2019, 16:01 »
Цитата: Пантер от Ноябрь 11, 2019, 10:21
Цитировать
"С" не любят потому что он резко ограничивает возможности говнокодинга, все должно быть сделано аккуратно и скрупулезно.
Чо?
Да C разрешает все, что угодно. Поэтому и говнокодинга на нем в разы больше, чем на плюсах.
Тут я думаю Igors имел в виду другое.
Попытаюсь сказать за него, но могу ошибаться, он поправит:
Си настолько стрёмный язык, ну вообще, что люд на нём так аккуратно пишет чтобы не накосячить - загляденье, а не код.
Хех. Но на практике это не так
Видно когда бородатые дядьки на нем начинали кодить, инета особенно не было, жене не интересно вот и колбасили как хотели, а культура прижилась.
«
Последнее редактирование: Ноябрь 11, 2019, 16:02 от Azazello
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: c vs c++
«
Ответ #35 :
Ноябрь 11, 2019, 16:24 »
Цитата: Azazello от Ноябрь 11, 2019, 16:01
Си настолько стрёмный язык, ну вообще, что люд на нём так аккуратно пишет чтобы не накосячить - загляденье, а не код.
Все верно, "простыня" и "плевать" (из Вашего предыдущего поста) не покатят, быстро захлебнетесь в собственном коде. Не стали бы Вы копипастить отработку ошибки 57 раз, придумали бы как обобщить. Др словами ограниченность (пусть даже "убогость") средств дисциплинирует. А вот на плюсах, увы, этого не происходит. Зачем что-то придумывать? Лучше чего то скоммуниздить (gsl::not_null), или, конечно, exception (который может и к месту, но может и нет).
Старый юмор
Записан
Azazello
Самовар
Offline
Сообщений: 103
Re: c vs c++
«
Ответ #36 :
Ноябрь 11, 2019, 16:28 »
Цитата: Igors от Ноябрь 11, 2019, 16:24
Цитата: Azazello от Ноябрь 11, 2019, 16:01
Си настолько стрёмный язык, ну вообще, что люд на нём так аккуратно пишет чтобы не накосячить - загляденье, а не код.
Все верно, "простыня" и "плевать" (из Вашего предыдущего поста) не покатят, быстро захлебнетесь в собственном коде. Не стали бы Вы копипастить отработку ошибки 57 раз, придумали бы как обобщить. Др словами ограниченность (пусть даже "убогость") средств дисциплинирует. А вот на плюсах, увы, этого не происходит. Зачем что-то придумывать? Лучше чего то скоммуниздить (gsl::not_null), или, конечно, exception (который может и к месту, но может и нет).
Старый юмор
Давайте все таки не так.
Возьмите два любых проекта из линукса, отройте первые попавшиеся исходники на Си и на С++ и скажите что вы правы.
Воспринимайте мой первоначальный пост следующим образом:
Как хорошо когда жена уехала, наконец то можно носки разбрасывать где хочу.
«
Последнее редактирование: Ноябрь 11, 2019, 16:53 от Azazello
»
Записан
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: c vs c++
«
Ответ #37 :
Ноябрь 11, 2019, 17:20 »
Цитата: Igors от Ноябрь 11, 2019, 16:24
Лучше чего то скоммуниздить (gsl::not_null)
gsl::not_null поддерживается основными статическими анализаторами (clang и мелкософтным). Удачи сделать свой велосипед=)
Записан
ViTech
Гипер активный житель
Offline
Сообщений: 858
Re: c vs c++
«
Ответ #38 :
Ноябрь 11, 2019, 17:37 »
Цитата: Авварон от Ноябрь 11, 2019, 17:20
gsl::not_null поддерживается основными статическими анализаторами (clang и мелкософтным). Удачи сделать свой велосипед=)
А вы пользуетесь этим gsl::not_null? Какие ощущения? И как у него с поддержкой умных указателей (в частности unique_ptr)?
Записан
Пока сам не сделаешь...
Авварон
Джедай : наставник для всех
Offline
Сообщений: 3260
Re: c vs c++
«
Ответ #39 :
Ноябрь 11, 2019, 18:16 »
Цитата: ViTech от Ноябрь 11, 2019, 17:37
А вы пользуетесь этим gsl::not_null? Какие ощущения? И как у него с поддержкой умных указателей (в частности unique_ptr)?
К сожалению, не пользуюсь=( Только недавно перешли на с++17 моими стараниями (был с++11), а gsl хочет с++14 минимум. В ближайших планах есть.
gsl:span юзал, вот это вещь, да.
С умными указателями вроде всё неплохо, почему нет?
Записан
Страниц:
1
2
[
3
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...