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

Сделать так, чтобы предикат работал тоже шаблонно, в зависимости от типа значений, хранимых ей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как перегрузить оператор для своего класса? http://www.cyberforum.ru/cpp-beginners/thread1234315.html
У меня есть класс, .h class Vertex { public: ~Vertex(); Vertex(); double GetX(); double GetY(); double GetZ(); void SetX(double x);
C++ Какую лучше всего в наше время использовать графическую библиотеку? Какую лучше всего в наше время использовать графическую библиотеку? в VS 2012, слышал об SFML, и Openg. Какую современную и легкую для понимания посоветуете. http://www.cyberforum.ru/cpp-beginners/thread1234292.html
C++ Открыть файл по заданному пути
Нужно, чтобы открывался файл, который, например, находится в C:\TEST#1 Подскажите, пожалуйста, как это сделать?
Можно ли передать указатель на функцию как параметр другой функции? C++
В общем, вопрос. Можно ли, допустим ... int fun1(int x) { ... ... ... return x*1000; }
C++ Создание полиморфного объекта, зачем создавать указатель на объект базового класса? http://www.cyberforum.ru/cpp-beginners/thread1233965.html
Зачем создавать указатель на объект базового класса: Base *A = new Derived Если можно сделать так: Derived *A = new Derived
C++ Реализовать круговые движения курсором мыши Я новичек в с++. Хочу написать простую программу, которая при нажатии на кнопку (которую задам я в программе) мышь начинала делать круговые движения (что-то типа цикла). Можете подсказать функцию, с помощью которой это можно реализовать, если вообще можно на с++ ? подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт С++
 Аватар для ForEveR
7955 / 4717 / 318
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
26.07.2014, 12:18     Сделать так, чтобы предикат работал тоже шаблонно, в зависимости от типа значений, хранимых ей
Vlad0922, Как в STL же.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
template<typename Collection, typename Pred>
unsigned count(const Collection& c, const Pred& pred)
{
    unsigned counter(0);
    for (typename Collection::const_iterator pos = c.begin(); pos != c.end(); ++pos)
    {
        if (pred(*pos))
        {
             ++counter;
        }
    }
    return counter;
}
 
// code
int counter = count(vec, &isInteger<double>);
А лучше использовать алгоритм std::count_if
 
Текущее время: 18:59. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru