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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,926
#1

А как ваше начальство относится к новым стандартам и boost? - C++

31.07.2014, 18:55. Просмотров 565. Ответов 11
Метки нет (Все метки)

Разрешают ли вам использовать С++11, boost? Если нет - чем обосновывают. Если сначала нет, потом да - расскажите как этого добились.

Здесь же можно указывать и в какой IDE работаете.

Просьба отвечать лишь тех, кто работает в корпоративном секторе.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.07.2014, 18:55
Здравствуйте! Я подобрал для вас темы с ответами на вопрос А как ваше начальство относится к новым стандартам и boost? (C++):

Вопрос по стандартам написания кода - C++
Положим, что я пишу код на С++ и использую расширения .cpp для файлов, но при этом использую, в большинстве своем, функции, наследованные...

Как определить, к какому классу относится элемент массива? - C++
Добрый вечер. Задача следующая: существует абстрактный класс, который наследуется в нескольких производных классах. После этого,...

Как выйти из цикла, если break относится к switch? - C++
Как выйти из цикла в конструкции while(условие) { switch(i) case(!условие): break; default break; }

Ваше мнение по новым контроллерам TPS - Контроллеры PLC
Вот уже вторую неделю ни как не могут дойти руки до Тиббовского тестового образца ПЛК - TPS. Господа может кто юзал технику или читал?!...

Начальство подкинуло забот - 1С
Исходные данные: Аптечная сеть. Центральный офис и 20 удаленных аптек. В аптеках небольшая локальная сеть. Компьютер и несколько касс. ...

Начальство хочет разрулить пользователей - Windows Server
Вообщем от меня начальство хочет чтобы я реализовал следующую штуку на вин2000 Адвансед Сервер. Клиенты работают на сервере в...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
0x10
2463 / 1635 / 238
Регистрация: 24.11.2012
Сообщений: 4,022
31.07.2014, 19:04 #2
Ограничения на использование - исключительно технические.
Для кроссплатформенных проектов - подмножество фич, поддерживаемых во всех используемых компиляторах (windows - msvs 2013, linux - пока gcc 4.6, что используется на маках и мобилках - не помню).
В проектах переносимость которых не требуется - можно использовать возмжоности компилятора в полной мере.
0
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
31.07.2014, 22:32 #3
Очень сильно зависит от задачи. Как уже упомянул 0x10 в случае создания кроссплатформенных проектов приходится ограничиваться минимальным подмножеством, чтобы меньше городить веток условной компиляции. Сейчас правда практикуется вариант использования Qt для таких целей: с mingw под винду и gcc под линукс. Поэтому считай разницы в языковых конструкциях нет, т.к. компилятор по сути тот же. В этом случае использование C++11 приветствуется. Boost приходилось более активно использовать в до С++11-эру, сейчас многое уже есть в текущем стандарте, поэтому часть буста как такового уменьшилась.
Из IDE приходилось работать и в С++Builder разных версий (сейчас, слава богу, уже нет), и в VS (тут не только плюсы, но ещё и C#).
Есть проекты под QNX6 (писано в IDE Momentics на базе Eclipse), QNX4 (PhAB Photon Application Builder - археология ещё та). В данный момент активно используется QtCreator.
0
DrOffset
7134 / 4275 / 963
Регистрация: 30.01.2014
Сообщений: 7,064
01.08.2014, 00:21 #4
MrGluck, у нас версия компилятора жестко зафиксирована (как и многие другие инструменты - сертификация). Поэтому у нас с++11 не практикуется, вообще. Но начальство не против, в принципе, если в будущем сертифицируют более новую версию.
А вот boost используется (версия тоже фиксирована), правда не везде, только в userspace компонентах.
0
ct0r
Игогошка!
1773 / 675 / 42
Регистрация: 19.08.2012
Сообщений: 1,287
Завершенные тесты: 1
01.08.2014, 03:58 #5
Начиная с января 2013 года:
одна контора - можно по желанию использовать и С++11, и Boost. Никто за это не хвалит и не ругает. KDevelop.
другая контора - C++11 приветствуется, а Boost бывает даже и заставляется MSVS 2013.

MrGluck, а вам там запрещают?
0
ForEveR
В астрале
Эксперт С++
7972 / 4734 / 321
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
01.08.2014, 10:24 #6
boost в наших проектах используем много и постоянно. С++11 не используем пока практически.
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,926
01.08.2014, 11:17  [ТС] #7
Цитата Сообщение от ct0r Посмотреть сообщение
MrGluck, а вам там запрещают?
У нас много отделов. Есть тот, который занимается разработкой движка - там, можно сказать, что лишь С с классами (никаких исключений, ссылок, шаблонов(сюда сразу stl, string, ...)) и компилируется всё это под множество платформ с доисторическими компиляторами. Есть компилятор, который стали писать ещё лет 20 назад, там идёт легаси код С, однако изредка встречаются элементы С++11. Он компилится под винду(VS10) и линь(gcc 4.6).
Есть некая софтина с гуем, в ней можно использовать всё, что разрешено VS10 (небольшой набор С++11), но зато в ней же используется буст.
Есть ещё одна команда, отвечающая за взаимодействие с сервером. Там можно и С++11 и буст.

А я нахожусь (являюсь тимлидом) в команде так называемого парсера. Когда я ещё только устроился на работу, мне строго-настрого запрещено было использовать С++11 (были страхи начальства по поводу "сырости" стандарта). Позже мы встали в проблему со считыванием юникода (долго рассказывать, скажу лишь, что всё лаконично решалось с помощью codecvt), тогда начальство сказало "ну ладно, именно codecvt использовать можно", позже удалось выбить разрешение на использование auto для длинных итераторов (у нас они бывают реально длинными), ну и с этого момента как-то стали использовать всё, что позволяет VS10 (списочек небольшой: auto, лямбды, регулярки, хэш контейнеры, codecvt, да и всё пожалуй). И, кстати, разрешение это выдали не только нам, но и командам выше (за исключением серверной, там всегда можно было всё).
Очень не хватало for цикла по коллекции (для pugixml это вообще критичный момент т.к. при неверном указании условий цикла он ведёт себя неадекватно и падает совершенно в другом месте на перераспределении), списка инициализации, делегированных конструкторов, raw string, variadic templates. И я в течении месяца в ежедневном отчёте в проблемах описывал данный фактор, показывал пути решения с помощью С++98 и С++11. Всей команде мы поставили VS13, убедились что наши проекты собираются в ней без проблем, но пока не использовали. В итоге вчера мне было дано официальное разрешение на полное использование нашей командой возможностей С++11 из VS13. Давно я не был так счастлив

Захотелось узнать, возможно кто-то ещё также упёрто выбивал разрешение.
0
Tulosba
:)
Эксперт С++
4395 / 3238 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
01.08.2014, 11:46 #8
Цитата Сообщение от MrGluck Посмотреть сообщение
использование auto для длинных итераторов (у нас они бывают реально длинными)
typedef тоже нельзя что ли было?
0
MrGluck
Модератор
Эксперт CЭксперт С++
7239 / 4407 / 642
Регистрация: 29.11.2010
Сообщений: 11,926
01.08.2014, 12:57  [ТС] #9
Цитата Сообщение от Tulosba Посмотреть сообщение
typedef тоже нельзя что ли было?
так при больших контейнерах эти typedef всё равно длинными получаются + писать ::const_reverse_iterator тоже лень)
0
Kastaneda
Форумчанин
Эксперт С++
4653 / 2862 / 228
Регистрация: 12.12.2009
Сообщений: 7,271
Записей в блоге: 2
Завершенные тесты: 1
01.08.2014, 13:01 #10
У нас тоже сильно от проекта зависит, но С++11 в конторе пока не используется. Сейчас работаю разработчиком в проекте, где используется boost, но только header-only либы. Если бы я был тимлидом в каком-нибудь плюсовом проекте (а я по тимлид в Java проекте), то я бы (конечно же) настоял на использовании С++11.
Конкретно в тех проектах, в которых я работаю, IDE выбирается по желанию, построение все равно сделано через самостоятельные системы построения. Я под Linux'ом QtCreator использую (оооочень жду С++ IDE от JetBrains), т.к. альтернативы ему пока не вижу. Под виндой не работаю.
Пару лет назад я поднимал вопрос об использовании С++11, сказали, что стандарт сырой и бла бла бла. С тех пор этот вопрос не поднимался.
0
HighPredator
5482 / 1848 / 345
Регистрация: 10.12.2010
Сообщений: 5,450
Записей в блоге: 3
01.08.2014, 13:35 #11
Цитата Сообщение от MrGluck Посмотреть сообщение
Разрешают ли вам использовать С++11, boost? Если нет - чем обосновывают
Не разрешают ни то, ни другое. Обоснование: слишком большие финансовые риски (конкретно для нашего проекта). В целом нельзя так как партнерские корпорации пока не могут предоставить средства для работы с этим в полном объеме. Плюс есть какие-то заморочки в плане сертификации по ISO.
0
ct0r
Игогошка!
1773 / 675 / 42
Регистрация: 19.08.2012
Сообщений: 1,287
Завершенные тесты: 1
01.08.2014, 15:27 #12
Цитата Сообщение от MrGluck Посмотреть сообщение
Есть ещё одна команда, отвечающая за взаимодействие с сервером. Там можно и С++11 и буст.
Когда я работал в Яндексе, некоторые команды использовали Boost и Git, а наша команда без Boost и на Subversion, вот тут я и осознал всю жестокость и несправедливость этого мира!

Цитата Сообщение от MrGluck Посмотреть сообщение
И я в течении месяца в ежедневном отчёте в проблемах описывал данный фактор, показывал пути решения с помощью С++98 и С++11.
Молодчик! Достал их наверное вконец там))

Цитата Сообщение от MrGluck Посмотреть сообщение
Всей команде мы поставили VS13, убедились что наши проекты собираются в ней без проблем, но пока не использовали. В итоге вчера мне было дано официальное разрешение на полное использование нашей командой возможностей С++11 из VS13. Давно я не был так счастлив
Поздравляю! Я сам переводил реально большой проект (по указанию сверху) с MSVS 2010 на 2013 и одновременно со старой версии Boost на самую новую. Было несложно, но кое-что поисправлять пришлось. Нашел один баг в компиляторе (несоответствие стандарту), связанный с пространствами имен Заняло пару недель. Жаль, что MSVS 2013 поддерживает последний стандарт не целиком, у меня еще прям руки тогда чесались поставить ноябрьский CTP
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.08.2014, 15:27
Привет! Вот еще темы с ответами:

Boost начало работы: Undefined reference to `boost::system::generic_category() ' - Boost C++
Добрый день Собственно говоря возникла необходимость использовать boost в работе. Поставил так: sudo apt-get install boostlib-all-dev ...

Вероятность соответствия установленным стандартам - Теория вероятностей
В процессе простого бесповторного отбора по схеме невозвращенного шара обследовано 20 единиц продукции. Результаты проверки показали, что...

Проверка HTML на соответствие стандартам - Программирование
Уважаемые, посоветуйте какой-нибудь софт под w2k для проверки файлов HTML, на соответствие стандартам. То есть, имеется некий стандарт w3c...

Хранимая процедура - subquery? Начальство убивает. - SQL Server
Уважаемые коллеги, у меня проблема. Для ее решения мне нужно обработать результат хранимой процедуры (там Select по параметрам) в другом...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.08.2014, 15:27
Ответ Создать тему
Опции темы

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