2016-06-16 1 views
-1

Я разработчик C++. Недавно я столкнулся с концепцией функциональных объектов. Но мне было интересно об использовании функциональных объектов в повседневной кодировке. Пожалуйста, обратите внимание на такое использование, которое сделает код более чистым или более эффективным.Использование в реальном мире функторов или объекта функции

+0

Посмотрите на это: http://www.cprogramming.com/tutorial/functors-function-objects-in-c++.html – ErAcube

+2

Возможный дубликат http://stackoverflow.com/questions/356950/c- functors-and-their-uses –

+3

Если вы посмотрите на [функции алгоритма в стандартной библиотеке] (http://en.cppreference.com/w/cpp/algorithm), многие из них принимают * предикат * в качестве аргумента, и этот предикат является вызываемым, как экземпляр объекта функции. –

ответ

0

Функционал в значении слова C++, что делает поведение закрытия lambdas введено с C++ 2011 «возможно».

0

Функторы в основном используются для обработки событий.

Например, объект Event будет иметь атрибуты функторов. Когда событие запускается, будут выполняться функции, обозначенные функторами.

Другой пример: у вас есть объект Plot, позволяющий рисовать кривые. Вы можете дать аргументы функторов, указывая на функцию, позволяющую вычислять точки кривой.

Смежные вопросы