|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
Удаление из вектора объектов08.02.2016, 17:04. Показов 8403. Ответов 18
Метки нет (Все метки)
Есть вектор, состоящий из объектов какого-то класса.
Есть объект принадлежащий этому классу. На вход методу приходит этот объект и его надо удалить из вектора. Как это сделать?
0
|
|
| 08.02.2016, 17:04 | |
|
Ответы с готовыми решениями:
18
Удаление из вектора нескольких объектов Добавление и удаление объектов. Рисование объектов на экране Сортировка объектов вектора |
|
104 / 104 / 99
Регистрация: 30.06.2015
Сообщений: 272
|
||||||
| 08.02.2016, 17:26 | ||||||
|
feck,
1
|
||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
||||||
| 08.02.2016, 17:30 [ТС] | ||||||
0
|
||||||
|
Неэпический
|
||||||
| 08.02.2016, 17:33 | ||||||
Сообщение было отмечено feck как решение
Решение
2
|
||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 08.02.2016, 18:15 [ТС] | |
|
Croessmah, Я правильно понимаю, что при этом оставшиеся справа элементы вектора сдвигаются влево на позицию?
0
|
|
|
Неэпический
|
||||||||
| 08.02.2016, 18:29 | ||||||||
|
Разберите работу кода:
0
|
||||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
||||||||||||
| 09.02.2016, 09:41 [ТС] | ||||||||||||
|
Croessmah,
Это из-за того, что
0
|
||||||||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|||||||||||
| 10.02.2016, 11:30 [ТС] | |||||||||||
|
Croessmah, появился новый вопрос. Там, где он возник в первый раз - все работает. Но вот в другом месте нет. На вход функции, в которой проблема, подается (SHP_Class2 shpSrc)
>c:\program files (x86)\microsoft visual studio 12.0\vc\include\algorithm(1734): error C2678: binary '==' : no operator found which takes a left-hand operand of type Class1::Struct1' (or there is no acceptable conversion) 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\thread(202): could be 'bool std::operator ==(std::thread::id,std::thread::id) throw()' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\system_error(410): or 'bool std::operator ==(const std::error_condition &,const std::error_code &) throw()' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\system_error(402): or 'bool std::operator ==(const std::error_code &,const std::error_condition &) throw()' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\exception(507): or 'bool std::operator ==(const std::exception_ptr &,std::nullptr_t)' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\exception(502): or 'bool std::operator ==(std::nullptr_t,const std::exception_ptr &)' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\exception(497): or 'bool std::operator ==(const std::exception_ptr &,const std::exception_ptr &)' 1> c:\program files (x86)\windows kits\8.1\include\shared\guiddef.h(192): or 'bool operator ==(const GUID &,const GUID &)' [found using argument-dependent lookup] 1> while trying to match the argument list '(Class1::Struct1, const Class1::Struct1)' 1> c:\program files (x86)\microsoft visual studio 12.0\vc\include\algorithm(1748) : see reference to function template instantiation '_FwdIt std::_Remove<Class1::Struct1*,_Ty>(_FwdI t,_FwdIt,const _Ty &)' being compiled 1> with 1> [ 1> _FwdIt=Class1::Struct1 * 1> , _Ty=Class1::Struct1 1> ] 1> c:\projects\file3.cpp(16) : see reference to function template instantiation '_FwdIt std::remove<std::_Vector_iterator<std::_ Vector_val<std::_Simple_types<Class1::St ruct1>>>,Class1::Struct1>(_FwdIt,_FwdIt, const _Ty &)' being compiled 1> with 1> [ 1> _FwdIt=std::_Vector_iterator<std::_Vecto r_val<std::_Simple_types<Class1::Struct1 >>> 1> , _Ty=Class1::Struct1 1> ]
0
|
|||||||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
||||||
| 10.02.2016, 15:21 [ТС] | ||||||
|
Croessmah, я и сам не знаю, как сравнить их...
А noncopyable как влияет на это? Вроде не копирую объект. Добавлено через 13 минут Попытался сделать так, но пишет: слишком много аргументов.
0
|
||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 10.02.2016, 16:45 [ТС] | |
|
Croessmah, пишет, что no operator == matches these operands. Operand types are Class2==Class2.
Надо убрать "звездочки"? Добавлено через 13 минут Не, явно не в этом дело.
0
|
|
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 10.02.2016, 17:17 [ТС] | |
|
Сейчас уже тоже хотел написать, что походу надо для Class2 тоже перегружать)
Спасибо! Добавлено через 27 минут Croessmah, и еще вопрос, почему == принимает одно значение? Должно же быть вроде два?
0
|
|
|
Неэпический
|
||||||||
| 10.02.2016, 17:41 | ||||||||
0
|
||||||||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 10.02.2016, 17:43 [ТС] | |
|
Croessmah, Понял про внешнюю перегрузку. Про внутреннюю тоже понял, только как определить в произвольном случае, какой первый параметр(который уже есть и хотя бы его имя)?
0
|
|
|
Неэпический
|
||
| 10.02.2016, 17:59 | ||
|
В не статические функции-члены неявно передается указатель на "текущий" объект - this. this->shpSrc или просто shpSrc, компилятор сам сделает через this.
1
|
||
|
7 / 7 / 3
Регистрация: 19.03.2010
Сообщений: 182
|
|
| 11.02.2016, 13:00 [ТС] | |
|
Croessmah, я имел ввиду для произвольного класса, не моего. Делать через this, значит?
0
|
|
| 11.02.2016, 13:00 | |
|
Помогаю со студенческими работами здесь
19
Вывод в файл вектора объектов Сортировка вектора объектов по полю
Предикаты. Выборка объектов из вектора по определённому полю Как освободить память из-под вектора объектов? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|