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

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

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

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 минуты
вспомнил
вложенные классы не могут быть шаблонными
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.10.2011, 12:14     Проблема с std::find_if
Посмотрите здесь:

C++ stl find_if msvs6.0
STL std::set, std::pair, std::make_pair C++
C++ Не воспринимает ни std::cout, ни std::cin. Вобщем ничего из std. Также не понимает iostream
C++ algorithm: find_if
(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const& C++
C++ Error in std::find_if
C++ Как использовать std::find_if?
Find_if C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 23:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru