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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
9h05t
4 / 4 / 0
Регистрация: 07.05.2009
Сообщений: 29
#1

Проблема с std::find_if - C++

03.10.2011, 12:14. Просмотров 1435. Ответов 0
Метки нет (Все метки)

Здравствуйте, есть такой пример использования алгоритма из стандартной библиотеки:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <vector>
#include <algorithm>
 
int main()
{
   class LP
   {
       public: bool operator ()(const std::pair<int, int>& p) { return p.first > 0; }
   };
 
   std::vector<std::pair<int, int> > t;
   std::find_if(t.begin(), t.end(), LP());
 
   return 0;
}
при компиляции gcc вот такая ошибка:

C++
1
no matching function for call to ‘find_if(__gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > >, __gnu_cxx::__normal_iterator<std::pair<int, int>*, std::vector<std::pair<int, int>, std::allocator<std::pair<int, int> > > >, main()::LP)
Хотя судя из описания функции http://www.cplusplus.com/reference/algorithm/find_if/ все правильно. Кстати, в студии компилируется.

В чём может быть бок?

Блин, кажется ошибся форумом :/ сори

Добавлено через 1 час 3 минуты
вспомнил
вложенные классы не могут быть шаблонными
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2011, 12:14
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проблема с std::find_if (C++):

Error in std::find_if - C++
Привет всем. Подскажите плз. Что std::find_if не поддерживает обратных итераторов? Почему этот код вызывает ошибку компиляции? ...

Как использовать std::find_if? - C++
Добрый день! Хочу использовать find_if, в реализации сортировки вставками. Но с синтаксисом у меня проблема. Помогите исправить код ...

Не воспринимает ни std::cout, ни std::cin. Вобщем ничего из std. Также не понимает iostream - C++
Здравствуйте! Я хотел начать изучать язык C++. Набрал литературы. Установил Microsoft Visual C++ 2005 Express Edition. Образ диска...

ошибка error: cannot convert 'std::string {aka std::basic_string<char>}' to 'std::string* {aka std::basic_stri - C++
на вод поступают 2 строки типа string. определить количество вхождений строки 2 в строку 1 ошибка error: cannot convert 'std::string {aka...

STL std::set, std::pair, std::make_pair - C++
Я не знаю как описать тему в двух словах, поэтому не обращайте внимание на название темы. Собственно перейдем к нашим баранам: есть...

На основе исходного std::vector<std::string> содержащего числа, создать std::vector<int> с этими же числами - C++
подскажите есть вот такая задача. Есть список . Создать второй список, в котором будут все эти же числа, но не в виде строк, а в виде...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.10.2011, 12:14
Привет! Вот еще темы с ответами:

Find_if - C++
#include &quot;stdafx.h&quot; #include &lt;vector&gt; #include &lt; map&gt; #include &lt;string&gt; #include &lt;algorithm&gt; using namespace std; class...

algorithm: find_if - C++
В етой задачке должно виводить симетрическии числа но не делает етого Почему подскажите:-#include&lt;iostream&gt; #include&lt;algorithm&gt; ...

stl find_if msvs6.0 - C++
Здравствуйте! У меня вопрос: почему алгоритмы из &lt;algorithm&gt; в вижуал студио 6 не работают? тоесть выдает такие ошибки на такой код: ...

find_if, нужна помощь - C++
Здравствуйте! Помогите решить проблему пожалуйста. Тут все просто, но у меня куча ошибок ( Вот структура struct HardWare { ...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru