Форум программистов, компьютерный форум CyberForum.ru

Удаления элемента Vector-а по имени - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Программа с использованием функций и ошибка [BCC32 Error] File1.c(2): E2293 ) expected http://www.cyberforum.ru/cpp-beginners/thread1102383.html
Нужно написать программу с использованием функцый, вроде все правильно написал но выдает ошибку " File1.c(2): E2293 ) expected" подскажите где я накосячил #include <stdio.h> void Input(int& a, int k) {for (int i=1;i=k;i++) {printf("Vvedit ochinku $i suddi"); scanf("%d",a); } } //------------ void DelMin(int& a, int k)
C++ Напишите программу, которая создает массив из трех структур CandyBar Добрый Вечер! Выполните упражнение б, но вместо объявления массива из трех структур CandyBar используйте операцию new для динамического размещения массива. P.S. Упражнение №6 Структура CandyBar включает три члена, как описано в предыдущем упражнении. Напишите программу, которая создает массив из трех структур CandyBar, инициализирует их значениями по вашему усмотрению и затем... http://www.cyberforum.ru/cpp-beginners/thread1102363.html
C++ Описать класс для вычисления суммы непарных элементов массива
Задача. Описать класс для решения поставленной задачи (сума непарных елементов). В классе предусмотреть: 1. Дополнительный конструктор. 2. Метод автоматической инициализации массива в заданном пользователем диапазоне. 3. Ввод элементов массива с клавиатуры. 4. Метод, который возвращает значение в соответствии с вариантом. При работе программы пользователь выбирает сам способ заполнения...
C++ Узнать когда и какая кнопка была нажата и когда была отпущенна
Привет, программирую в Code::Blocks + wxWidgets 2.8.12 Хочу сделать там что-то вроде компонента HotKey в былдере. Но для этого нужно узнать когда была нажата/отпущенна клавиша, как сделать такую проверку ? Делал так: BYTE by = {0}; if(GetKeyboardState(by)) { if(by != 0 || by != 0) //TextCtrl1->AppendText(L"Press... key CTRL");
C++ Аналог sprintf http://www.cyberforum.ru/cpp-beginners/thread1102336.html
Здравствуйте! Допустим есть функция которая наращивает строку, добавлением строки/символа/числа или остальных объектов из которых можно "вытянуть" что-нибудь, что можно назвать строкой/символом. Я знаю sprintf который записывает в выбранный буфер получившуюся строку, но в нём нужно явно указывать тип того, что нужно преобразовать в строку аналогично как в выводе printf, например для целого числа...
C++ Составить программу для вычисления произведения чисел из диапазона от а до b, кратных 5 Помогите пожалуйста написать программу для вычисления произведения чисел из диапазона от а до b, кратных 5 циклами while и do while. подробнее

Показать сообщение отдельно
DrOffset
6852 / 4063 / 927
Регистрация: 30.01.2014
Сообщений: 6,859
21.02.2014, 22:42     Удаления элемента Vector-а по имени
Про индексы я зря сказал, потому что если вы будете удалять из середины - придется их пересчитывать.
Плюс вектор не очень хорош на задачах (опять же потому, что требует непрерывности), где нужно удалять из середины коллекции.
В общем, как мне кажется, лучший вариант (с учетом удаления из середины) вот такой:
C++
1
2
3
4
5
6
7
8
9
10
11
// 1
// или std::deque 
// используем везде итераторы вместо указателей
std::list<dxDot>::iterator dxCreateDot(float x, float y, char symbol) {
    return DotsList.insert(DotsList.end(), dxDot(x, y, symbol));
}
 
void dxRemoveDot(std::list<dxDot>::iterator remIter)
{
    DotsList.erase(remIter);
}
Добавлено через 1 минуту
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
вообще-то у него не указатель на элемент вектора, а вектор указателей.(указатели произвольные на объекты в куче)
Вообще-то в его первом посте явно видно, что указатель он разыменовывает. Так что это спорное утверждение.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru