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

Remove_if для std::list - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как считать n-ое слово в строке http://www.cyberforum.ru/cpp-beginners/thread1178336.html
Как найти любое (n-ное) слово в строке? Слова(группа слов) разделяются запятыми
C++ Перенос из directx8 в directx9, ошибка в SetVertexShader Доброе время суток. Есть кусок кода написанного для directx8 #include <d3dx8.h> #include <mmsystem.h> #include <C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include\WinNT.h> #include <d3dx8mesh.h> #include <Windows.h> #include "C:\Program Files (x86)\Microsoft DirectX SDK (August 2009)\Include\dinput.h" http://www.cyberforum.ru/cpp-beginners/thread1178331.html
C++ Переставить элементы в этом массиве
Ввести массив чисел с задаваемым количеством элементов и некоторое число. Без использования другого массива переставить элементы в этом массиве так, чтобы в начале массива оказались элементы не меньше некоторого числа, а в конце массива - элементы меньше этого числа, с сохранением порядка их взаимного расположения в исходном массиве. Вывести преобразованный массив. Пример вводимых данных: 8...
C++ Описать структуру "Сотрудник"
Описать следующую структуру Сотрудник Ф.И.О Дата поступления с вариантной частью записи: Студент Сотрудник Другое Средний балл Личный номер
C++ Графы. Реализовать удаление указанной вершины из графа G, удаление ребра соединяющего две заданные вершины http://www.cyberforum.ru/cpp-beginners/thread1178305.html
Доброго вечера) Имеется программа с графом и реализацией всего двух функций: AddVertex (v1) – добавление вершины к графу G, в случае существования в составе G указанной вершины должно выдаваться соответствующее уведомление; AddEdge (v1,v2) – соединение двух вершин ребром, если указанные вершины на момент выполнения указанной операции уже смежны, то пользователь должен быть оповещён о...
C++ Обработка текстовых данных Уважаемы форумчане, помогите с решением задачи. Сначала нужно ввести n кол-во строк в файл, потом открыть его, считать из него эти строки и сохранить в другой файл. Вот только с одним условием, если в строке больше 6 символов, то нужно вставить только чётные символы. Именно с обработкой строк у меня возникли проблемы. Не знаю как это реализовать... #include "stdafx.h" #include <fstream>... подробнее

Показать сообщение отдельно
slevin_45
1 / 1 / 0
Регистрация: 17.12.2013
Сообщений: 66
16.05.2014, 22:33     Remove_if для std::list
Здравствуйте!
Помогите мне разобраться,пожалуйста.Перечитал кучу всего,но так и не понял ,что можно писать в аргументе метода remove_if.
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
#include<iostream>
#include<list>
#include<algorithm>
using namespace std;
void printlist(list<int> a)
{
    copy(a.begin(),a.end(),ostream_iterator<int>(cout," "));
}
bool check(int &k,list<int>::iterator p)
{
    return(k!=*p);
}
void main()
{
    int i;
    list<int> a;
    for(i=1;i<5;i++)
    {
        a.push_back(i);
    }
    list<int>::iterator p=a.begin();
    list<int>::iterator d=a.end();
    advance(p,1);
    advance(d,-1);
    remove_if(check);
    printlist(a);
}
Когда передавал один аргумент в check всё работало.Но с двумя уже не работает.Как быть?Что хочу сделать:сравнивать значения list с значением итератора.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 17:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru