С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/25: Рейтинг темы: голосов - 25, средняя оценка - 4.96
2 / 2 / 1
Регистрация: 20.03.2012
Сообщений: 42
1

.erase() в массиве.

18.04.2012, 23:53. Показов 4510. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
есть массив вектор например:
vector< pair<char,int> > k;
k[i].second мне надо его удалить как воспользоваться функции k.erase() ; ?????
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.04.2012, 23:53
Ответы с готовыми решениями:

работа erase
написал вот такой код // Example program #include &lt;iostream&gt; #include &lt;string&gt; #include...

vector::erase()?
есть вектор структур struct person{ string name; int age; vector &lt;person&gt; repw;

vector.erase
Помогите пожалуйста с синтаксисом удаления любого элемента из вектора Вот тут ошибка: #include...

Erase map
Добрый день, мне необходимо удалить из MAP некоторое количество элементов, сейчас я делаю это вот...

3
2554 / 1319 / 178
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
19.04.2012, 00:32 2
Цитата Сообщение от Sade Посмотреть сообщение
k[i].second мне надо его удалить как воспользоваться функции k.erase() ; ?????
erase к pair вообще никакого отношения не имеет.
0
Эксперт С++
8482 / 6149 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
19.04.2012, 01:15 3
C++
1
k.erase(итератор на элемент вектора!)
именно вектора а не pair, pair не является контейнером чтоб у него можно было удалять что -либо
0
Заблокирован
19.04.2012, 01:34 4
Цитата Сообщение от Sade Посмотреть сообщение
есть массив вектор например:
vector< pair<char,int> > k;
k[i].second мне надо его удалить как воспользоваться функции k.erase() ; ?????
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <iostream>
#include <vector>
#include <utility>
#include <algorithm>
 
typedef std::pair<char, int> mypair;
typedef std::vector<mypair> myvec;
 
int main()
{
    std::vector<mypair> vec;
    vec.push_back(mypair('a', 1));
    vec.push_back(mypair('b', 2));
    vec.push_back(mypair('c', 3));
 
    // output:
    // a 1
    // b 2
    // c 3
    for (myvec::iterator it = vec.begin(); it != vec.end(); ++it)
        std::cout << it->first << " " << it->second << std::endl;
    std::cout << std::endl;
 
    const int target = 2;
    myvec::const_iterator it =
        std::find_if(vec.begin(), vec.end(), [&target](mypair pair) { return pair.second == target; });
    if (it != vec.end())
        vec.erase(it);
 
    // output:
    // a 1
    // c 3
    for (myvec::iterator it = vec.begin(); it != vec.end(); ++it)
        std::cout << it->first << " " << it->second << std::endl;
    std::cout << std::endl;
    return 0;
}
1
19.04.2012, 01:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.04.2012, 01:34
Помогаю со студенческими работами здесь

stl::list erase()
вот такой код есть, но не работает. как подправить? list&lt;int&gt; ls; list&lt;int&gt;::iterator it;...

Шаблоны: insert, erase
У меня проблема, как именно нужно описать main и проблема с функцией insert, мне сказали, что в ней...

вектор алгоритм erase
Доброго всем времени суток.Пожалуйста подскажите чайнику.Пытаюсь из контейнера убрать лишние данные...

list не работает erase
void in_out_Park(list&lt;Bus&gt; &amp;in, list&lt;Bus&gt; &amp;out) { int n, i=0; Bus temp; cout&lt;&lt;&quot;Введите...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru