|
3 / 3 / 1
Регистрация: 12.07.2013
Сообщений: 124
|
||||||
Копирование вектора (std::vector)28.10.2019, 14:47. Показов 6131. Ответов 3
Метки нет (Все метки)
Есть некоторая структура Measure_Simulation, которая включает в себя достаточно много полей типа int, long, long double, char*, bool.
И есть вектор (std::vector) measuresvector, каждый элемент которого относится к типу Measure_Simulation. Этот вектор имеет 40 тысяч таких элементов. Я копирую содержимое вектора measuresvector в другой вектор measuresvector2, используя следующий код:
Можно ли как-то сделать это копирование быстрее? Какой код для этого следует использовать?
0
|
||||||
| 28.10.2019, 14:47 | |
|
Ответы с готовыми решениями:
3
Удаление элемента из вектора ( std::vector<Bullet> ) Как передать целочисленную матрицу типа std::vector<std::vector<int> > в функцию? |
|
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
|
||||||
| 28.10.2019, 15:18 | ||||||
|
erslgoeirjh, почему просто не...
1
|
||||||
|
4903 / 2696 / 921
Регистрация: 29.11.2010
Сообщений: 5,783
|
|
| 28.10.2019, 16:33 | |
|
Сильно подозреваю, что тормозит у вас создание дубликатов объектов типа Measure_Simulation.
Вам точно нужно их продублировать в этой операции? Можно ли вместо этого хранить в векторе умный указатель на объект Measure_Simulation и сделать копию именно указателей? Копирование 40К указателей это гораздо быстрее, учитывая, что там еще и char* есть, который тоже, небось, копируется...
0
|
|
|
Комп_Оратор)
|
||
| 28.10.2019, 17:42 | ||
|
erslgoeirjh, использование дремучего дарвинизма, предполагающее природный рост вектора, это процесс болезненный. Эту эволюцию нужно превратить в революцию. Сразу зарезервировать место, а потом перенести копии. Это библиотека умеет делать сама. Используйте оператор = или конструктор. Немаловажно также то, что в библиотеке реализованы move варианты (С++11+) и при необходимости можно применить их тоже. Тогда всё что выделено в динамической памяти переедёт в новый экземпляр не помятое и свежее)
0
|
||
| 28.10.2019, 17:42 | |
|
Помогаю со студенческими работами здесь
4
Как изменять размер std::vector<std::vector>? Вывести значения std::vector<std::vector<int*> > Std::vector<std::pair<std::vector<int>::iterator, std::vector<int>::iterator> Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Контроль корректности заполнения дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|