LINUX.ORG.RU

Ничего плохого.
> самое страшное

Боятся же.

Terrens
()
Ответ на: комментарий от Reset

Буст я сам боюсь смотреть, да и не могу понять зачем он мне. Просто дело в том что я этот STL применяю повсюду, и вот задумался - а не есть ли это плохо?

aix27249
() автор топика
Ответ на: комментарий от aix27249

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

Reset ★★★★★
()
Ответ на: комментарий от Reset

> поэтому приходится его (boost) использовать
Главное, не пытаться его с наскоку понять. Иначе новая рубашка с длинными рукавами гарантирована! :-)

one_more_hokum ★★★
()
Ответ на: комментарий от Reset

Буст для моих задач - слишком тяжелая зависимость, и без необходимости его использовать не стоит хотя бы из-за этого. И все же, изначально вопрос был про STL :)

aix27249
() автор топика
Ответ на: комментарий от jtootf

> реквестирую примеры кошерностей

смартпоинтеры, биндеры, регэкспы, asio, датавремя, случайные числа

остальным практически не пользовался, но наверняка многие найдут для себя что-нибудь полезное

mannaz
()
Ответ на: комментарий от mannaz

Много слышал болтовни про ужасную реализацию, кроме того - смущает обилие альтернативных реализаций (в том же Qt например). Впринципе, мне возможностей STL вполне хватает...

aix27249
() автор топика
Ответ на: комментарий от mannaz

>смартпоинтеры

GC для бедных. лучше, чем ничего, но на роль кошерностей не тянут

>биндеры

пробовал патчить boost.bind или boost.lambda?

>регэкспы

даже не смешно

>датавремя

ну это очень полезная штука, да; ты забыл ещё boost.filesystem включить в список тогда уж

>случайные числа

http://www.rsdn.ru/forum/cpp/2252961.1.aspx

>asio

из всего списка соглашусь только с этим пунктом. boost.asio действительно хорош, на удивление

jtootf ★★★★★
()
Ответ на: комментарий от mannaz

> о наверняка многие найдут для себя что-нибудь полезное

смартпоинтеры с поддержкой многопоточности и массивов.

AndreyKl ★★★★★
()
Ответ на: комментарий от mannaz

>Ничего плохого, но и полезного не много

и STL, и Boost оперируют понятием концепта (duck typing), которого в текущем стандарте C++ нет; компилятор проверку концептов не выполняет, библиотеки стандартных концептов нет. а ошибка в трактовке того или иного концепта может привести к очень нехорошим последствиям. примерами стандартных (!) нарушений концептов STL являются vector<auto_ptr> (да и сам auto_ptr) и vector<bool>

вот это - опасно, потому как для auto_ptr и vector<bool> ты знаешь в чём дело, а для произвольного пользовательского типа ошибка нарушения концепта может выплыть самым неожиданным образом. и будет она очень читаемой, и поместится целиком на трёх рулонах туалетной бумаги

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

> GC для бедных. лучше, чем ничего, но на роль кошерностей не тянут

Ты путаешь GC с RAII

> пробовал патчить boost.bind или boost.lambda?


Саму либу? Нет.

> Ты забыл ещё boost.filesystem включить в список тогда уж


Я этим не пользовался

mannaz
()
Ответ на: комментарий от jtootf

> примерами стандартных (!) нарушений концептов STL являются vector<auto_ptr> (да и сам auto_ptr) и vector<bool>

Жуткий бред, согласен

mannaz
()
Ответ на: комментарий от mannaz

>Ты путаешь GC с RAII

нет, не путаю. RAII можно организовать и без умных указателей, и не нужны для RAII именно указатели (тем более столько, сколько их есть в boost). впрочем, дело вкуса

>Саму либу? Нет.

счастливый человек

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

> нет, не путаю. RAII можно организовать и без умных указателей

Причем здесь можно/не можно? смартпоинтеры - это RAII для сырой памяти.

mannaz
()

> самое страшное что есть в плюсах

это его юзеры

nikolayd
()
Ответ на: комментарий от mannaz

>смартпоинтеры - это RAII для сырой памяти.

смартпоинтеры это 1) смарт + 2) поинтеры. скажи, на кой чёрт для RAII нужна часть 2?

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

> смартпоинтеры это 1) смарт + 2) поинтеры. скажи, на кой чёрт для RAII нужна часть 2?

Не нужна, кто спорит. Прочитай еще раз мой предыдущий пост: я хотел сказать, что смартпоинтеры - это не указатели для RAII, а RAII для указателей, только и всего. Сравнение с GC некорректно.

mannaz
()

> На каждом углу слышу что STL - это самое страшное что есть в плюсах. Кто объяснит что в них плохого?

Синтаксис. Синтаксис у плюсов и так страшон. А с STL ещё страшнее становится.

xintrea
()
Ответ на: комментарий от mannaz

>смартпоинтеры - это не указатели для RAII, а RAII для указателей, только и всего

ок, принято

jtootf ★★★★★
()

Самое страшное что есть в плюсах это его пользователи.

smh ★★★
()
Ответ на: комментарий от aix27249

> Много слышал болтовни про ужасную реализацию

Можно сказать, что реализация того немногого, что есть в STL, как правило, уже отточена до блеска. Риски минимальны, особенно в сравнении с созданием собственных велосипедов.

> Смущает обилие альтернативных реализаций


Из "альтернативных" реализаций сталкивался только с STLPort - его имеет смысл использовать, если тебе нужно гарантированное единообразное до мелочей поведение STL на всех платформах.

> в том же Qt например


Qt традиционно использовал собственные контейнеры, т.к. "в лихие 90-е" полагаться на STL с учетом всех поддерживаемых библиотекой платформ было нельзя. Сейчас использование контейнеров Qt никак не навязывается, хотя они полностью совместимы с STL и обладают некоторыми очень полезными фичами. Например т.н. неявное разделение данных - можешь вернуть из метода вектор с миллионом элементов или передать его по значению, не потеряв в производительности.

> Впринципе, мне возможностей STL вполне хватает...


Напрасно. По крайней мере без boost.smart_ptr или его альтернативы серьезного программирования на C++ не получится.

mannaz
()

STL не осиливают быдло-куны и распускают слух, что STL - это гимно, что-бы не было так обидно, за то что не осилили.

vnovouhov
()
Ответ на: комментарий от GAMer

Однохренственно ибо там и в бусте применяются похожие принципы

Reset ★★★★★
()

>слышу что STL - это самое страшное

страшное, но не самое :)

robot12 ★★★★★
()
Ответ на: комментарий от vnovouhov

>распускают слух, что STL - это гимно

а соседей облучают микроволнами. шапочку из фольги уже носишь?

jtootf ★★★★★
()
Ответ на: комментарий от jtootf

> а соседей облучают микроволнами. шапочку из фольги уже носишь?

/* быдло-кун не осиливший STL детектед */ ЯЩИТАЮ ты несешь бред, юный и глупый!

vnovouhov
()
Ответ на: комментарий от vnovouhov

>быдло-кун не осиливший STL детектед

о нет! как ты догадался??? :'(

jtootf ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.