Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
 
ct0r
Игогошка!
1776 / 678 / 42
Регистрация: 19.08.2012
Сообщений: 1,294
Завершенные тесты: 1
#1

С++17. Начинаем ждать? - C++

30.04.2015, 10:51. Просмотров 8294. Ответов 141

https://isocpp.org/files/papers/D4492.pdf

Как думаете, в правильном ли направлении идет развитие? Что вы хотите видеть в С++17? Какую фичу ждете больше всего?
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2015, 10:51
Здравствуйте! Я подобрал для вас темы с ответами на вопрос С++17. Начинаем ждать? (C++):

Модем должен ждать прихода смс - C++ Builder
Всем, привет! Вообщем все почти реализовал для GSM модема, умею отправлять читать и стирать смс, но есть один вопросик, а как можно сделать...

Как ждать выполнения определенной функции - C++ Builder
Добрый вечер! Такая задача: Клиент-Сервер, передача файла по UDP (не ругайтесь, такое задание=)) При передаче очередного пакета,...

Задать команду в COM-порт, ждать 500мс и посмотреть ответ - C++ Builder
Всем привет! Кстати, мой первый пост на этом форуме. И так, реализовал работу с портом, все работает. На основе COMThread-3 (WINAPI).rar...

Не ждать завершения запущенной внешней программы - C++
Я запускаю из своей программы внешний экзешник при помощи system(command). Но данный вариант меня не устраивает, т.к. приходится ждать...

Как заставить поток ждать в некоторых ситуациях - C++
Есть такой сценарий приложения: Приложение до запуска TCP кеширует данные из MySQL в std::vector, далее запускается TCP и ожидаются...

Как заставить прогу на с++ ждать новые записи из БД - C++
Нужно чтобы прога на с++ ждала новых записей в БД и если они поступят производила с ними кое какие действия Вопрос в том как именно...

141
XRuZzz
Антикодер
687 / 593 / 29
Регистрация: 15.09.2012
Сообщений: 2,541
01.05.2015, 18:26 #16
я не знаю как по другому можно выразить свою позицию по вопросу....
Цитата Сообщение от ct0r Посмотреть сообщение
Как думаете, в правильном ли направлении идет развитие?
уж извините... критики в адрес развития C++ достаточно и без меня... достаточно открыть любую книгу по более новому языку программирования, чем C++.

Добавлено через 9 минут
всё умолкаю :]
0
ct0r
Игогошка!
1776 / 678 / 42
Регистрация: 19.08.2012
Сообщений: 1,294
Завершенные тесты: 1
01.05.2015, 18:30  [ТС] #17
Цитата Сообщение от XRuZzz Посмотреть сообщение
Ну да Страуструп тоже так рассуждает, мне такой путь явно не подходит, и многие тоже от него отказались, например автор книги "О Haskell, по человечески", он намного больше меня работал на C++, лет 7 вроде.
Я бы на твоем месте скорее привел пример Бартоша Милевски. Честное слово, будет убедительней А теперь поясню мою позицию. Я не имею абсолютно ничего против Хаскелла, это действительно классный язык для изучения функционального программирования и его преимуществ. Но я, изучая его, никогда не думаю о том, чтобы запихать его в продакшен куда-либо. Это гибельный для бизнеса путь. Поиграться в песочнице в своих простеньких некоммерческих проектах - другое дело, может подойти как хобби, но у меня они другие. Я думаю в контексте: каким образом то, что я узнал, может помочь мне спроектировать и написать лучший код на С++.
А тема про то, что D уже не нужен, есть в соответствующем разделе. Надо было выстреливать раньше.

Цитата Сообщение от Убежденный Посмотреть сообщение
Но складывается впечатление,
что C++ зашел слишком далеко и уже пытается "сидеть на двух стульях".
Еще немного - и у нас в C++ будет GC, огромный рантайм, рефлексия с RTTI,
которую нельзя будет отключить, необходимость поддержки со стороны
операционной системы и т.п.
Страуструп пишет, что они постараются не допустить создания в С++ этакого более высокоуровневого подъязыка.

Цитата Сообщение от Убежденный Посмотреть сообщение
графика,
полноценная работа с Unicode, поддержка XML/JSON/CSV
Для этого есть много либ, причем очень специализированных. Зачем брать в стандарт некую компромиссную, которая удовлетворяет всех, но на очень среднем уровне?

Цитата Сообщение от XRuZzz Посмотреть сообщение
критики в адрес развития C++ достаточно и без меня
Критики в адрес любого языка всегда достаточно. Это говорит лишь о том, что идеальных языков не существует.
2
XRuZzz
Антикодер
687 / 593 / 29
Регистрация: 15.09.2012
Сообщений: 2,541
01.05.2015, 19:00 #18
да действительно - тема переходит в плоскость холиваров после моих сообщений. Это было послание к тем кто ещё не слышал о некоторых языках, что то вроде "смотрите по сторонам когда изучаете какой то язык, это может сильно продлить вам жизнь".
Цитата Сообщение от ct0r Посмотреть сообщение
Это говорит лишь о том, что идеальных языков не существует.
Но есть языки, которые больше абстрагируются от железа в сторону математики... есть языки, которые содержат больше ограждений от ошибок, на которые люди тратят 80% времени.
Я не знаю чем можно оправдать такое количество граблей в C++.
По-моему единственно верный путь развития - это отказ от обратной совместимости.
Видите, я стараюсь держаться в рамках темы :]

Цитата Сообщение от ct0r Посмотреть сообщение
Как думаете, в правильном ли направлении идет развитие?
или на этот вопрос, надо было отвечать признавая тот факт, что обратная совместимость это хорошо для C++ и мы не рассматриваем направления развития других языков? Так мне на это особо не интересно отвечать.
0
ct0r
Игогошка!
1776 / 678 / 42
Регистрация: 19.08.2012
Сообщений: 1,294
Завершенные тесты: 1
01.05.2015, 19:03  [ТС] #19
Цитата Сообщение от XRuZzz Посмотреть сообщение
Это было послание к тем кто ещё не слышал о некоторых языках, что то вроде "смотрите по сторонам когда изучаете какой то язык, это может сильно продлить вам жизнь".
Тоже палка о двух концах. Кругозор это безусловно хорошо, но больше востребованы и лучше оплачиваемы именно специализирующиеся на чем-то конкретном эксперты. Необходимо держать баланс.

Цитата Сообщение от XRuZzz Посмотреть сообщение
Но есть языки, которые больше абстрагируются от железа в сторону математики...
Конечно есть. Главное, чтобы они не были излишне ей перегружены. И не забудем тот факт, что железо спроектировано сейчас явно не под функциональщину.

Цитата Сообщение от XRuZzz Посмотреть сообщение
По-моему единственно верный путь развития - это отказ от обратной совместимости.
Этого нельзя делать. Мы можем этого хотеть как перфекционисты и идеалисты, но на С++ есть много больших проектов, которые пишутся и сопровождаются годами, и бросать их на произвол судьбы - плохо!
0
XRuZzz
01.05.2015, 19:30
  #20

Не по теме:

у меня язык не поворачивается рекомендовать новичкам изучать следующее издание Страуструпа, его даже перевести на русский за разумное время не смогут. За время чтения английского издания, можно прочитать 3-5 книг по математике русских авторов, каждая из которых будет полезнее.
но я не говорю, что зря на нём работал несколько лет, Страуструпу надо сказать спасибо и идти дальше...

0
Убежденный
Ушел с форума
Эксперт С++
15701 / 7211 / 1139
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
01.05.2015, 19:46 #21
Цитата Сообщение от zenden2k Посмотреть сообщение
это всё - специфика, которая прекрасно покрывается сторонними библиотеками.
В язык это тянуть не нужно.
Не в язык, а как часть стандартной библиотеки.
Вон в C++17 включат Boost.Asio и будет только лучше.

Цитата Сообщение от zenden2k Посмотреть сообщение
Если придерживаться каких-то правил, https://google-styleguide.googlecode.../cppguide.html, а не писать "как попало", то никакой проблемы нет.
Что-то не улавливаю, какая связь между следованием code style и
переносимостью кода ? Вот вариадики, к примеру, в одних компиляторах
поддерживаются, в других нет, в третьих есть, но с ограничениями.
Вывод: хочешь писать переносимо - откажись от них полностью.
А это сводит плюсы от данной фичи на ноль.
0
Nick Alte
Эксперт С++
1640 / 1012 / 119
Регистрация: 27.09.2009
Сообщений: 1,945
Завершенные тесты: 1
01.05.2015, 22:23 #22
Цитата Сообщение от Убежденный Посмотреть сообщение
Что-то не улавливаю, какая связь между следованием code style и
переносимостью кода ?
Дело в другом понимании термина "переносимость", который подразумевает использование строго следующих стандарту компиляторов на всех платформах и оставляет за скобками их индивидуальные отклонения и причуды.
0
zenden2k
43 / 28 / 8
Регистрация: 21.04.2015
Сообщений: 82
02.05.2015, 20:25 #23
Что мне еще не нравится в C++, это бардак с библиотеками и ABI.
Разные компиляторы не совместимы между собой, разные версии одного и того же компилятора не совместимы между собой.
Скачал буст, скомпилил, получил по 6 вариантов каждой библиотеки
C++
1
2
3
4
5
6
libboost_filesystem-vc120-mt-1_57.lib
libboost_filesystem-vc120-mt-gd-1_57.lib
libboost_filesystem-vc120-mt-s-1_57.lib
libboost_filesystem-vc120-mt-sgd-1_57.lib
libboost_filesystem-vc120-s-1_57.lib
libboost_filesystem-vc120-sgd-1_57.lib
Причем имена файлов не стандартизированы, каждый называет, как ему в голову взбредет.
Одна и та же библиотека на разных системах, компиляторах будет называться по-разному.
Еще, часто чтобы собрать все библиотеки проекта, надо установить все существующие интерпретаторы и компиляторы, python, perl, ruby, asm, ruby, msys2, mingw, и т.д.
Вот бы сделали какой-то менеджер зависимостей, для винды хотя бы, в линуксе вроде многое устанавливается через репозитории, но там далеко не всё есть.
В линуксе тоже не всё гладко, недавно собрал прогу под убунту, всё окей, запустил под линукс минт - получил ошибку ABI.
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
02.05.2015, 20:31 #24
Цитата Сообщение от zenden2k Посмотреть сообщение
Вот бы сделали какой-то менеджер зависимостей
Посмотри MSYS2.
0
zenden2k
43 / 28 / 8
Регистрация: 21.04.2015
Сообщений: 82
02.05.2015, 20:39 #25
DrOffset,
я использую нормальные компиляторы под винду, т.е. MSVC, а не недопорты gcc
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
02.05.2015, 20:59 #26
Цитата Сообщение от zenden2k Посмотреть сообщение
я использую нормальные компиляторы под винду, т.е. MSVC
Ну вообще-то там и clang есть.
Ты спрашивал про менеджер зависимостей и пакетов, я дал ссылку. Использовать это или нет, дело твое, мне докладывать не обязательно
0
Dmitriy_M
1360 / 1243 / 114
Регистрация: 20.03.2009
Сообщений: 4,449
Записей в блоге: 11
02.05.2015, 21:52 #27
Цитата Сообщение от zenden2k Посмотреть сообщение
Причем имена файлов не стандартизированы, каждый называет, как ему в голову взбредет.
все вроде описано Library Naming

Цитата Сообщение от zenden2k Посмотреть сообщение
я использую нормальные компиляторы под винду, т.е. MSVC, а не недопорты gcc
Кучу всего написал в продакшене на "недопурту gcc", нареканий со стороны пользователей нет.
DrOffset, давно CLang стал годным для Winows?
0
Avazart
Эксперт С++
7247 / 5419 / 297
Регистрация: 10.12.2010
Сообщений: 24,053
Записей в блоге: 17
02.05.2015, 22:52 #28
Цитата Сообщение от Убежденный Посмотреть сообщение
Не в язык, а как часть стандартной библиотеки.
Вон в C++17 включат Boost.Asio и будет только лучше.
Блин, есть куда более нужные вещи чем этот асио.
К примеру расширили бы в STL возможные виды контейнеров например добавили бы COW контейнеры а еще лучше потокобезопасные котейнеры, да и вообще если уже решили всучить потоки так стоило бы расширять тему, ведь std::thread уступает boost::thread.

C тем успехом как пошло развитие, то программисты будут не успевать изучать то что реально еще не реализовано и нормально не работает ибо разработчики компиляторов не будут успевать внедрять.

Добавлено через 17 минут

Не по теме:

Цитата Сообщение от ct0r Посмотреть сообщение
Для этого есть много либ, причем очень специализированных.
Например под XML?
Я знаю что либ очень много, но обычно это либы фрейворка, либо либы написанные на языке Си, либо враперы С++ над ними, причем много этих враперов довольно паршиво выглядит.

0
Dmitriy_M
1360 / 1243 / 114
Регистрация: 20.03.2009
Сообщений: 4,449
Записей в блоге: 11
02.05.2015, 23:19 #29
Цитата Сообщение от Avazart Посмотреть сообщение
ведь std::thread уступает boost::thread.
О, это уже интересно, особенно когда мантейнер boost::thread участвует в работе над потоками в стандарте.

Цитата Сообщение от Avazart Посмотреть сообщение
C тем успехом как пошло развитие, то программисты будут не успевать изучать то что реально еще не реализовано и нормально не работает ибо разработчики компиляторов не будут успевать внедрять.
Вроде разработчики компиляторов все успевают.

Не по теме:


Цитата Сообщение от Avazart Посмотреть сообщение
Например под XML?
К примеру RapidXml, а есть еще RapidJson

0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
02.05.2015, 23:45 #30
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
DrOffset, давно CLang стал годным для Winows?
Не веришь что ли?
Предлагаю в таком случае самому посмотреть.
Лучше один раз увидеть, как говорится
0
02.05.2015, 23:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.05.2015, 23:45
Привет! Вот еще темы с ответами:

Теперь C++11 - полностью и на сто процентов новый C++: чего ждать - C++
Приветствую всех ) , друзья подскажите пожалуйста такую вещь. Случайно прочитал на форуме про Стандарт C++11, я читал про ISO и про...

Как заставить машину ждать перед очередным выполнением цикла? - C++
есть код#include <stdio.h> #include <iostream> #include <conio.h> using namespace std; int main(int argc, char *argv) { ...

Определите вероятность того, что Ариса будет ждать зеленого света не более k секунд. - C++
На одном из перекрестков Тель-Авива установлен светофор, который горит зеленым светом g секунд, а красным r секунд. Ариса подходит к...

Начинаем рисовать - Turbo Pascal
Привет всем. Вот простой код: ... gd:=VGA;gm:=VGAhi; InitGraph(gd,gm,''); if(GraphResult=grOk)then begin line(0,0,520,210); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru