170 похожих чатов

Блин, пока пытался посоветовать использовать std::ranges::split, узнал, что эта гадость

выдаёт не contigious_range, что не позволяет по-человечески преобразовать получившиеся поддиапазоны в string_view. Поэтому теперь уже новый вопрос - а кто-нибудь вообще использовал в своих проектах std::ranges? С этим можно жить, или пока лучше оставаться на ranges-v3?

Я знал, что они недоработаны, но не думал, что настолько =(

19 ответов

15 просмотров

Почему в плюсах такие простейшие и востребованные вещи как string.split() вводятся через 40 лет от рождения языка и все равно остаются неудобным говном?

Vladimir
Почему в плюсах такие простейшие и востребованные ...

Потому что split это ниразу не простейшая вещь. Для того чтобы это ввести нужны доп построения в виде ренжей, которые как раз сложности и вызывают

Kirill Bolshakov
Потому что split это ниразу не простейшая вещь. Дл...

Что сложного в том чтобы пройтись по строке, поискать delim и вернуть вектор из токенов? В си есть хотя бы strtok

Vladimir
Что сложного в том чтобы пройтись по строке, поиск...

То что такой split это гавнокод. Схрена ли он аллоцирует у тебя?

Vladimir
Схрена ли аллокация это говнокод?

с того, что это можно сделать без аллокаций и оверхеда

Kirill Bolshakov
Ещё и к ветэктору привязка

Вектор это часть стд либы, что не так?

Vladimir
Схрена ли аллокация это говнокод?

Потому что она не нужна, но замедляет код.

Kirill Bolshakov
Потому что она не нужна, но замедляет код.

А велосипеды замедляют разработку

Vladimir
Вектор это часть стд либы, что не так?

А вдруг я хочу в лист собрать? перегонять вектор в лист, и потом удалять вектор?

Vladimir
Вектор это часть стд либы, что не так?

А если у меня свой вектор юзается? Или я вообще хочу в хэш таблицу результат отправить?

Vladimir
А велосипеды замедляют разработку

велосипедов и не будет, если сделать все грамотно, чего видимо не успели принять в C++20

Kirill Bolshakov
Потому что она не нужна, но замедляет код.

И почему не нужна? Ок, как в идеальном с++ мире должен сплит работать?

Vladimir
И почему не нужна? Ок, как в идеальном с++ мире до...

Возвращать ренж как щас, только юзабельно, как в 23

Vladimir
И почему не нужна? Ок, как в идеальном с++ мире до...

возвращать view на сплитнутые значения, и уже оттуда танцевать как вам захочется

Kirill Bolshakov
А если у меня свой вектор юзается? Или я вообще хо...

Зачем вообще нужна стандартная либа если подразумевается что программист имеет не стандартные векторы? Я считаю что если юзаешь либу, то пусть она работает со всем своим

Vladimir
Зачем вообще нужна стандартная либа если подразуме...

Стандарт даёт тебе концепты в виде итераторов, контейнеров и т.д. И ты можешь реализовать конкретные сущности моделирующие эти концепции. Именно на языке концепций, без привязки к конкретным типам должна говорит стандартная либа. Чтобы я мог разработать контейнер под свою задачу и заюзать его без проблем

Kirill Bolshakov
Стандарт даёт тебе концепты в виде итераторов, кон...

Это классно, но приходится все очень усложнять ради 1% юзкейсов

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта