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

В стандартной библиотеке есть функция для сложения двух векторов?

26 ответов

27 просмотров

кажется, среди алгоритмов, почему-то, действительно нету. Есть хорошая штука из C++23, если можешь себе позволить последние версии компиляторов.

AnTINooBL- Автор вопроса

надо писать код для случаев когда один вектор больше другого

AnTINooBL
надо писать код для случаев когда один вектор боль...

проще некуда, итерируйся до std::min(v1.size(), v2.size()), если используешь индексы.

Что значит сложение?

Maus Grau
Что значит сложение?

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

да, есть valarray

Ага std::vector::insert с парой итераторов

std::transform

Viktor Chyzhdzenka
std::transform

Ну std::copy тогда уж Трансформ это как-то прям из пушки по воробьям

Georgy Firsov
Ну std::copy тогда уж Трансформ это как-то прям из...

Да ладно. Если не нужна вся матричная арифметика с серьезными оптимизациями, то transform самое удобное.

Ilya Zviagin
Почему из пушки?

Я подумал про сложение векторов как про их конкатенацию, что в целом то логично. Для этого не нужен никакой трансформ А оказывается, у ТСа очень интересное понимание данного термина

Georgy Firsov
Я подумал про сложение векторов как про их конкате...

Понимание-то может и нормальное, но вектор использовался в математическом смысле.

Georgy Firsov
Я подумал про сложение векторов как про их конкате...

Конкатенация тоже трансформом с back_inserter делается, что не так?

Eyed Shovel
Конкатенация тоже трансформом с back_inserter дела...

Но зачем? Трансформ он предназначен для заполнения нового диапазона преобразованными элементами исходного. А когда преобразовывать не надо, то есть std::copy

Georgy Firsov
Но зачем? Трансформ он предназначен для заполнения...

transform в C++ это некоторая поелеменстная операция над двумя контейнерами с получением третьего. Какую вы операцию заюзаете - это ваш выбор.

Viktor Chyzhdzenka
transform в C++ это некоторая поелеменстная операц...

Но вот юзать "пустое" преобразование в некотором роде бессмысленно А так это и так понятно, что можно делать и через трансформ

Georgy Firsov
Но вот юзать "пустое" преобразование в некотором р...

Так это еще и удобно и читабельно - юзать transform.

Viktor Chyzhdzenka
Так это еще и удобно и читабельно - юзать transfor...

Да всё прав он, с std::copy конкатенация проще будет делаться, просто я душный

Eyed Shovel
Да всё прав он, с std::copy конкатенация проще буд...

одинаково. А выбор алгоритма определяется логикой того, что именно ты в коде делаешь.

Viktor Chyzhdzenka
Так это еще и удобно и читабельно - юзать transfor...

А чем std::copy нечитабельно и неудобно?) Вот у меня бы вызвал вопросы код: std::transform( src.cbegin(), src.cend(), std::back_insterter(dst), [] (const auto& e) { return e; }); Ну вот типа зачем нам вот этот пустой функтор? А когда написано так: std::copy( src.cbegin(), src.cend(), std::back_insterter(dst)); То тут сразу понятны намерения -- надо просто скопировать элементы одного диапазона в другой

Georgy Firsov
А чем std::copy нечитабельно и неудобно?) Вот у ме...

А выбор алгоритма определяется логикой того, что именно ты в коде делаешь.

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта