Тут недавно затрагивался вопрос стандартных и кутэшных контейнеров Было высказано

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

Решил погуглить альтернативное мнение
Нагуглил ответ на этот вопрос

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

Человек в ответе говорит про взаимодействие с апи, причём разбивает это на несколько аргументов за
А остальное особо не впечатляет

Какой итог этому можно подвести?

28 ответов

6 просмотров

"Используйте фреймворки, а не женитесь на них".

Ну тому же QString аналога в STL в общем-то нет Но, в отличие от, например, юникодной стринги раста, QString плох использованием UTF-16

Вообще я затрагивал эту тему в моём семинаре, где-то у нас была тут даже презентаха... Есть и видео, но оно такого страшного качества что туши свет. Ну и можно на эту тему посмотреть видео Джузеппе Д'Анжело, с CppCon. Оно простаннее и не только на эту тему, зато качество гут.

Ещё раз, официальная позиция Qt - не надо в программе использовать контейнеры Qt, если этого не требует взаимодействие с самой библиотекой Qt.

Ilya Zviagin
Вообще я затрагивал эту тему в моём семинаре, гд...

Там вроде тесты были Было бы интересно сравнение с Qt 6

𝚅𝚜𝚎𝚟𝚘𝚕𝚘𝚍
Там вроде тесты были Было бы интересно сравнение с...

Тесты не интересны, если ты о производительности. КОнтейнеры Qt и STD обладают разными свойствами, они не взаимозаменяемы безусловно.

Ilya Zviagin
Тесты не интересны, если ты о производительности. ...

Ну, тут скорее интересны преимущества (или недостатки) новой реализации перед старой

𝚅𝚜𝚎𝚟𝚘𝚕𝚘𝚍
Ну тому же QString аналога в STL в общем-то нет Но...

Вот это да, QString совсем другой, без него как без рук, но это не совсем контейнер. Это строка.

Ilya Zviagin
Вот это да, QString совсем другой, без него как бе...

Std::string-у до qstring как до луны пешком.. и это очень огорчает когда приходится писать чистый c++ код без qt

Юрий Александров
Std::string-у до qstring как до луны пешком.. и эт...

Скажем прямо: не "как до Луны", а "задачи другие"

Юрий Александров
А в чем другие? И то и то строка..

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

Dmitriy [Отпуск]
Майбах и УАЗик - тоже машины, и ещё вопрос, где в ...

Совместимость с C в смысле возможность вернуть const char * c_str?

Dmitriy [Отпуск]
Майбах и УАЗик - тоже машины, и ещё вопрос, где в ...

Но удобная строка в 2021 - это совсем не о std::basic_string, факт

Dmitriy [Отпуск]
Да, без лишних аллокаций и конвертаций

И как это должно выглядить с точки зрения байтопомоек нулевых символов и С-строк? ;)

Юрий Александров
И как это должно выглядить с точки зрения байтопом...

Если мне требуется работать с API OS, принимающим char*/wchar_t*, замены std'шной строке нет :) А вопроса не понял, если честно

Dmitriy [Отпуск]
Если мне требуется работать с API OS, принимающим ...

Ну про байтопомойку это не я сказал.. в моем представлении байтопомойка это массив произвольных байт, а null terminated string это отдельная история.. для легких Latin1 строк в Qt есть соотвествующий класс кстати

Юрий Александров
Ну про байтопомойку это не я сказал.. в моем предс...

Соглашусь, пожалуй. Хотя лишний байт не так критичен, как отсутствие resize_uninitialized

Юрий Александров
Ну у QString есть соотвествующий метод ;)

А в WinAPI есть чудо вида GetData(wchar_t* buf, unsigned long len, unsigned long* written). Чо делать-то?

Dmitriy [Отпуск]
А в WinAPI есть чудо вида GetData(wchar_t* buf, un...

Оно хоть что делает? ;) типа вернуть до N wchar_t и сколько в результате получилось?

Юрий Александров
Оно хоть что делает? ;) типа вернуть до N wchar_t ...

Пишет до len байт и во written возвращает нужный размер; len может быть 0, buf - нет

Юрий Александров
А в чем другие? И то и то строка..

QString для юникода, std::string - для быстрых и компактных строк однобайтовых или двух или 4хбайтовых символов.

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

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

Короче я тут узнал полный пиздец Что кучу постов которые я создавал через posted Спустя время не могу редактировать и менять Мол телега возвращае ошибку Это реально так ...
inc.
13
Привет, сталкивался кто с такой ситуацией? У меня есть модальное окно Bootstrap, в нем кнопка закрытия: <button type="button" class="btn-close" data-bs-dismiss="modal" aria-...
Виталий
3
А если изначально бот работал так : есть сайт онлайн школы. У каждого ученика свой кабинет. Где он авторизуется по своим данным. И уже в кабинете, на самом сайте делает оплату...
Денис 💡 Фрилансер
13
Какой число последнее будет, если сказали от 1 до 10 взять все?
Misha Mikhail
5
что это и почему оно? executor.start_polling(bot, skip_updates=True, on_startup=on_startup, File "/usr/local/lib/python3.10/dist-packages/aiogram/utils/executor.py", line 4...
𐌍𐌄 ᕓ𐌄𐌓𐌌Ꝋ𐌓𐌄
2
А у тебя есть информация сколько сейчас использует твой бот?
Artem Stormageddon
4
Окрошка! На квасе или кефире или на пиве?!
Akcium Сергей
4
Забавно, но для тебя "этот" = "следующий" т.е этот год для тебя какой?
Magic
3
Создан плагин через artisan, миграций не будет, как его активировать в админке?
Point 111
2
Кто-то юзал insomnia? Удобная штука ужас
𐌍𐌄 ᕓ𐌄𐌓𐌌Ꝋ𐌓𐌄
3
Карта сайта